加载、加载、构造函数

Say*_*yse 0 c# onload-event winforms

从我读过的其他 SO 问题来看,似乎使用覆盖 onLoad 是一种更好的方法,而不是在构造函数中处理初始方法。

当我在代码中添加断点时,我发现 onLoad 方法正在被命中,但构造函数没有......这些发生的顺序是什么?

这对于自定义加载事件也是一样的

编辑:白痴是我的断点没有被击中的原因,但我仍然对何时调用加载覆盖有点困惑?

tom*_*ich 5

OnLoad 方法/事件在第一次显示表单时执行。

当您使用 new 关键字创建 Form 类的新实例时,总是会调用构造函数。

通常认为最好的做法是在构造函数中进行所有表单初始化,而不是在 OnLoad 期间。如果您有多个构造函数并且想要在所有构造函数中执行一些常见的初始化任务,请将它们放在一个单独的方法中并从您的构造函数中调用它。确保 InitializeComponent() 作为构造函数的一部分被调用。OnLoad 实际上应该只在您需要重新定位表单或其他内容时使用。