【发布时间】:2010-04-25 18:00:21
【问题描述】:
就像Web应用程序中有Page生命周期一样,WinForms的事件生命周期是什么,尤其是Form和User Controls之间?
【问题讨论】:
标签: .net winforms events user-controls
就像Web应用程序中有Page生命周期一样,WinForms的事件生命周期是什么,尤其是Form和User Controls之间?
【问题讨论】:
标签: .net winforms events user-controls
根据MSDN:
主窗体的启动事件按以下顺序引发:
Control.HandleCreated
Control.BindingContextChanged
Form.Load
Control.VisibleChanged
Form.Activated
Form.Shown
主窗体的Shutdown事件按以下顺序引发:
Form.Closing
Form.FormClosing
Form.Closed
Form.FormClosed
Form.Deactivate
Application.ApplicationExit *
我知道这是一个老问题,但我想我会提供一个实际答案,因为大多数只是链接。
【讨论】:
FWIW,您应该小心对某些容器控件进行生命周期假设。例如,在选项卡控件中,我相信第二个和后面的选项卡上的控件是延迟加载的。在第一次访问选项卡之前,这些选项卡上的控件可能不会被实例化/初始化,因此,表单级代码不应假定所有选项卡页面上的所有控件都在表单加载完成时就位。
【讨论】: