我使用C#和WinForms来创建应用程序的UI。
我有主窗口和对话框,它显示在主窗口的模态中。对话窗口未显示在任务栏中。我转到另一个应用程序并通过单击主窗口任务蝙蝠图标返回。我可以看到锁定的主窗口但看不到对话框,除非我在Alt-Tab中选择它。这对应用程序用户来说很困惑。
如何确保在这种情况下显示模态窗口?我可以看到类似但不幸的未解决的问题ALT+TAB in Vista activates main window instead of previously active child window关于Vista(我有Windows 7)。
答案 0 :(得分:2)
这可能是因为您没有使用ShowDialog(所有者)重载。你应该担心ShowDialog()无法自己找到所有者并选择桌面窗口的确切原因。它不健康。我无法从你的帖子中猜出为什么。查看明确设置所有者购买的内容。
哦,当对话框在自己的线程上运行时会发生这种情况。在这种情况下,ShowDialog(所有者)将要炸弹。
答案 1 :(得分:0)
听起来你的对话框没有被主窗口正确拥有。在显示模式对话框之前,请确保已将主窗口分配给对话框对象的Owner属性。