OnLoad
方法和Load
事件之间有什么区别?我正在开发WinForm控件。
我应该注册Load
事件还是覆盖OnLoad
方法?每个人的优点和缺点是什么?
答案 0 :(得分:13)
我会去覆盖OnLoad
,因此您可以节省CPU周期来调用事件处理程序。
如果从控件继承,一般模式是覆盖方法;否则,订阅该活动。
但请记住调用基类'OnLoad
方法,因为这是调用Load
事件的地方。
答案 1 :(得分:4)
OnLoad方法是引发Load事件的方法。它是框架类中的标准模式,通常建议使用 - 对于任何事件Foo
,您都有一个虚拟保护方法OnFoo
来引发该事件;并且该类的其他方法没有直接引发事件,但总是调用OnFoo
。
如果您需要在this
上处理该事件,则覆盖OnFoo
通常会更容易,更快捷。
答案 2 :(得分:0)
OnLoad是VB.NET中用于处理Load事件的默认事件处理程序。当我需要将代码附加到load事件时,我通常会覆盖此方法。其他Page Life Cycle事件也有默认函数:OnPreRender,OnInit等。