我一直在以下方式为所有新Windows使用ShowDialog()。
SomeGui test = new SomeGui();
test.ShowDialog();
refreshSomeListView();
但是最近我开始使用Show()而不是ShowDialog(),它的工作效果要好得多。唯一的缺点是refreshSomeListView();
不能像上面的例子那样使用,因为如果我把它留在那里它会在新窗口显示时立即执行。
知道用户已关闭test
窗口并且现在应该执行refreshSomeListView();
的最佳方式是什么?对此有何建议?它应该涉及在关闭/关闭时在测试GUI中设置事件还是有其他/更好的方法?
答案 0 :(得分:8)
您可以订阅Form.Closed
事件并在其处理程序中执行刷新。 Here是此事件的MSDN描述。
答案 1 :(得分:1)
在VB.Net中:
Dim test as new SomeGui()
AddHandler test.Closed, AddressOf refreshSomeListView
test.Show