我有一个 .Net 4 应用程序,在 WPF 4 中有两个窗口:
- 一种是使用 WS_EX_NOACTIVATE 样式来防止获得焦点。
- 另一个是基本窗口。
只要我不选择基本窗口(它没有获得焦点),“不激活”窗口行为就合适了。But when the basic window is selected, the "no-activate" window can be focused... and gains it when the user clicked on it.
就好像 WPF 认为同一应用程序的两个窗口有权提供焦点,即使它们不应该这样做。如果两个窗口都是 WS_EX_NOACTIVATE,则不会发生此行为。
你有没有遇到过这个问题?我已阅读:Visual Studio 2010 中的 WPF – 第 3 部分:焦点和激活,但没有解决它。
编辑:我已经能够通过使用 Popup 作为我的非活动窗口的基类来解决问题。但是,我不想有弹出窗口。为什么 !?弹出窗口从未获得焦点:有人知道为什么/如何?如何将此行为重现到 Window ?我尝试进入弹出/窗口代码,但不是很清楚!
谢谢 !