Ben*_*nny 7 .net initialization winforms
在Load事件中或在InitializeComponent()之后的构造函数中?
或者根本不重要?
该Form.Shown事件是这样做可能需要超过约一秒钟的初始化的好地方.Form.Shown仅在表单首次对用户可见之后发生一次.
显然,如果你有一个冗长的初始化,你仍然需要提供某种形式的视觉反馈,并可能禁用表单的各个部分,直到完成.但是如果初始化是不可避免的,Form.Shown至少允许你让用户知道应用程序没有被冻结,并提供有关它实际正在做什么的反馈.
与Form.Load相比:从用户的角度来看,您的应用程序将被视为启动更快,因为您的表单在初始化完成时已经可见.
与Form.Activated相比:您不必担心多次运行初始化,因为每次隐藏/显示表单,最小化/最大化等时都会调用Activated事件.
与构造函数相比:与Form.Load类似,在初始化完成之前,您的表单将不可见.此外,您必须更加小心与可能未完全初始化的控件相关的时序/顺序问题.