MessageBox.Show()'冻结'winforms app,除非命中ALT

时间:2017-07-19 08:19:23

标签: c# winforms messagebox

这可能是一个愚蠢的问题,但我一直在环顾四周,找不到与我的情况有关的参考。

我有一个C#winforms应用程序,由多种形式组成 当一个特定的表单打开时(让我们称之为表单A),另一个表单试图显示一个messageBox,应用程序似乎冻结。
如果我按下键盘上的ALT键,情况就会解决,在这种情况下会出现messageBox,我可以继续。

这适用于其他形式,所以我收集问题是特定于形式A,但是,我对如何处理这个问题一无所知。
表单属性似乎与其他表单没有任何不同,我们使用VS中的设计器界面创建表单。

我很欣赏任何类型的指导或帮助。

3 个答案:

答案 0 :(得分:0)

请在我使用Windows窗体时解释问题所在,我一直在繁重的过程中实现线程或BackgroundWorker。

答案 1 :(得分:0)

好的,问题解决了! 这是如何: 在表单A上,我有一个datagridview。作为前一个问题的解决方案,我有一个针对该对象的痛苦运行的函数。 该函数在同一个对象上调用刷新 - 这就是问题 - 无限循环,劫持我的应用程序并有效隐藏messageBox。

当然,这是我的一个新手错误和一个“我没注意到”的坏情况。 希望这可以帮助将来的某个人:)

答案 2 :(得分:0)

我遇到了同样的问题,并确认以下代码有效。

MessageBox.Show("Hello", "Prompt", MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly);

重要的事情有五个和六个论点。这些必须是

MessageBoxDefaultButton.Button1, 
MessageBoxOptions.DefaultDesktopOnly

希望这会有所帮助。

相关问题