关闭,最小化或最大化时表单挂起

时间:2011-12-13 23:10:51

标签: c# winforms

我有一个c#Windows窗体应用程序,在大多数机器上运行得非常好。但是一些机器在关闭子表单(不是MDI应用程序)时整个应用程序会挂起几秒钟,直到窗口关闭。只有在单击右上角的“X”按钮时才会出现这种情况。如果我在表单上只有一个按钮this.Close();,则窗口关闭正常。我有大约20台机器可以正常工作,但到目前为止我已经看到2这个问题正在发生(一个是Windows 7,另一个是XP)。如果我在这些机器上运行Visual Studio中的代码,那么窗口就会很好。它只发生在从EXE运行时。关闭应用程序的主要形式时,没有挂起。只是孩子的形式。我正在使用

Form1 f = new Form1();
f.Show();

打开窗口。我在相同的应用程序中的空白测试表单上尝试了这个,没有代码,同样的事情发生。使用同一台计算机上的其他Windows窗体应用程序时,不会发生此问题。这个应用程序有一些具体的东西引起了这个但我无法缩小范围。我知道这是一个很难回答的问题而没有看到整个代码库,但过去有没有其他人遇到类似的问题?谢谢。

编辑:一些附加说明

最小化,最大化和恢复按钮会在单击任何按钮时导致相同的挂起。

有趣的是,如果你点击左上角的窗口图标并选择关闭,最小化或最大化那些都可以正常工作,没有延迟或挂起。

1 个答案:

答案 0 :(得分:0)

确保您的表单结束事件

Application.Exit(); //use to stop application processes

继续执行任务管理器,然后转到“进程”选项卡,检查应用程序是否导致CPU使用率过高。也许你的应用程序的实例仍在运行。

此致