C# 在WinC窗体中使用Show()时如何检测窗口何时关闭#
在我的所有新窗口中,我都以以下方式使用ShowDialog()C# 在WinC窗体中使用Show()时如何检测窗口何时关闭#,c#,winforms,show,C#,Winforms,Show,在我的所有新窗口中,我都以以下方式使用ShowDialog() SomeGui test = new SomeGui(); test.ShowDialog(); refreshSomeListView(); 然而,最近我开始使用Show()而不是ShowDialog(),而且它的效果要好得多。唯一的缺点是refreshSomeListView()不能像上面的例子那样使用,因为如果我把它放在那里,当新窗口出现时它会立即执行 知道用户已关闭test窗口并且现在已关闭refreshSomeListV
SomeGui test = new SomeGui();
test.ShowDialog();
refreshSomeListView();
然而,最近我开始使用Show()而不是ShowDialog(),而且它的效果要好得多。唯一的缺点是refreshSomeListView()代码>不能像上面的例子那样使用,因为如果我把它放在那里,当新窗口出现时它会立即执行
知道用户已关闭test
窗口并且现在已关闭refreshSomeListView()的最佳方法是什么应该执行代码>吗?对此有什么建议?它应该包括在关闭/关闭时在测试GUI中设置事件,还是有其他/更好的方法?您可以订阅表单.Closed
事件并在其处理程序中执行刷新。是此事件的MSDN描述。在VB.Net中:
Dim test as new SomeGui()
AddHandler test.Closed, AddressOf refreshSomeListView
test.Show
很好,很有效。您可以使用一些代码示例更新您的答案,以供将来参考。对于基本问题的基本答案,代码示例几乎不是必需的。尽管Charles不认为有必要,但下面是指向代码示例的链接,以供将来参考