C#Windows不在顶部打开

问题描述

我已经编写了一个相对较大的应用程序,其中包含许多对话框和表单等。 我用
Form.ShowDialog()
打开它们。 很多时候,表单会在现有窗口的后面打开,例如昨天,我在一台打开了其他程序的计算机上对其进行了测试:许多Windows资源管理器窗口,一些Excel窗口等。我的许多表单,打开/保存文件对话框等都应该打开但没有打开。我一直在按拇指,直到我按下alt + tab并意识到它们实际上在另一个窗口后面。 为什么会发生这种情况,将来如何停止?谢谢。     

解决方法

使用以所有者窗口为参数的“ 1”替代。 通过以对话框的所有者身份进入主窗口,可以确保对话框始终弹出并保持在对话框的前面。 如果用户使用其他应用程序,也不会使用户感到烦恼。