我目前正在开发一个wpf中的弹出程序,该程序会被this.hide();
或MainWindow1.WindowState = WindowState.Hidden
隐藏,而#34;弹出"使用MainWindow1.WindowState = WindowState.Normal;
我的问题是,我不希望Mainwindow获得任何键盘焦点。 因此无论程序具有键盘焦点,当弹出窗口显示时,它应该保留它。
我只是想这样,所以人们不会在不那么热闹的Popup中输入整个电子邮件,只是因为他们没有注意到它弹出来。
编辑: 我并没有试图将焦点放在任何我自己的程序窗口中,而是放在其他Windows程序中(例如Outlook)
EDIT2:
以下是我的计划中的a screenshot,只是为了清楚PopUp
类的使用方面的晦涩感。
编辑3:也许可以将键盘焦点设置回以前关注的程序?
答案 0 :(得分:0)
所以人们不要在
中输入整个电子邮件
我建议您在弹出窗口运行时将主页面控件或其容器Enabled
属性设置为false
,否则设置为反向。因此,将用户聚焦到弹出窗口直到其确认为止。
答案 1 :(得分:0)
如果您的目的是显示通知表单,请检查该组件:Windows Forms Toolkit NotificationForm
答案 2 :(得分:0)
解决方案(看起来)太容易了,您需要做的就是:
MainWindow1.Showactivated = false;
this.Show();
这将显示MainWindow,同时焦点保持在MainWindow出现之前焦点的任何程序上。