C#Windows无法在顶部打开

时间:2011-05-25 23:53:22

标签: c# winforms

我编写了一个相对较大的应用程序,其中包含大量对话框和表单等。 我用Form.ShowDialog()打开它们。

很多时候,表格在现有窗口后面打开,例如昨天我在一台打开了其他几个程序的机器上进行了测试:许多Windows资源管理器窗口,一些Excel窗口等等。很多我的表单,打开/保存文件对话框等应该打开但没有。我一直在拉着我的拇指,直到我按下alt + tab并意识到它们实际上是在另一个窗口后面。

为什么会发生这种情况,以后如何阻止它呢?感谢。

1 个答案:

答案 0 :(得分:4)

使用ShowDialog覆盖,将所有者窗口作为参数。

通过传入主窗口作为对话框的所有者,您可以保证对话框始终在其前面弹出,并保持在它前面。

如果他们使用其他应用程序,它不会惹恼用户。