【发布时间】:2017-01-24 16:58:41
【问题描述】:
当我通过Form.Show() 打开一个表单时,打开的表单的Show Event 不会被提升。
但是当我使用Form.ShowDialog() 时,会引发事件并且在我的Form_Shown 方法中命中我的断点。
我看到this answer,异常隐藏了事件,但我没有发现异常。
那么,为什么当我调用ShowDialog() 时会引发事件,但如果我调用Show() 则不会?
这里是link to a demo。当我单击 ShowDialog() 按钮时,我看到带有加载和显示事件的消息框,但对于 Show(),我只看到加载事件。
【问题讨论】:
-
你必须向我们展示代码——你知道的。
-
@LarsTech 什么代码?那两条线?添加事件处理程序并调用 Show()?这没有任何意义,并导致关闭为题外话“为什么我的代码不起作用”
-
因为还有其他事情发生。发布将重复该问题的代码。
-
无法重现。我使用
Show()和ShowDialog()得到Load()和Shown()事件。要么你错误地连接了这些事件,要么有其他东西阻止了这些事件的发生。您在表单上有任何第三方控件吗? -
@Idle_Mind 我一直都在看。发布您的小演示,我在链接中发布了我的。
标签: .net winforms .net-4.5.2