问题描述
我有一个要求,要求使用WPF的通知托盘应用程序必须(基于某些条件)弹出一个全局模式的窗口.这应该防止用户做任何事情(甚至在Tray应用程序外部),直到他们满足其他条件为止,这时它将启用关闭按钮并允许用户关闭它.
一个人如何做这样的窗口?我有显示的窗口,它会评估条件,什么都不会,但是它只是应用程序的模态(即,它仅阻止其下运行的应用程序的执行和UI.
我想我可以创建一个无边界的窗口并禁用最小化功能,但是他们仍然可以访问开始菜单.有没有人?我在功能方面的追求与Windows UAC/Admin特权请求窗口类似.
这不是顶部重复框所提供问题的重复.该问题与Windows窗体有关,不适用于WPF.碰巧的是,我收到了一个对我来说很有效的答案,而不是上面提供的问题的答案.并不是很重要,但是我希望删除重复的标签.我想认为在发布之前我已经很好地研究了我的问题,并且添加该标签意味着我没有.
编辑
此问题不是在重复问题"框中链接的问题的重复.这个问题以Windows窗体的形式得到了回答,我正在使用WPF(一种完全不同的UI框架).
使用Window.ShowDialog()
方法.可以在此处
请参阅由6个字母变量组成的第二条注释.
I have a requirement that specifies that a notification tray application that uses WPF must (based on some conditions) pop-up a window that is globally modal. This should prevent the user from doing anything (even outside of the Tray application) until they have satisfied some other conditions at which time it will enable the close button and allow the user to close it.
How does one make such a window? I have the window displaying and it evaluates the conditions and whatnot, but it is only modal to the application (i.e. it only blocks execution and UI for the application it is running under.
I imagine I could create a borderless window and maybe disable the minimize functionality, but they would still be able to access the start menu. Any takers? What I am striving for functionality-wise is similar to the Windows UAC/Admin privilege request window.
This is not a duplicate of the question provided by the duplicate box at the top. That question pertains to Windows Forms and is not applicable to WPF. As it happens I received an answer that worked well for me, and it was not the answer to the question provided above. Not that it matters really, but I would like the duplicate tag taken off. I like to think that I research my questions pretty well before posting, and adding that tag implies that I do not.
EDIT
This question is not a duplicate of the question that was linked int he Duplicate Question box. That question was answered with in a Windows Forms flavor, and I am using WPF, a completely different UI framework.
Use the Window.ShowDialog()
method. More info can be found here
See the second comment by sixlettervariables.
这篇关于完全模态WPF窗口?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!