我看到开发人员在 WinForms 中做的一件常见的事情是表单/控件订阅自己的事件,这样你就可以得到
this.Load += new System.EventHandler(this.WelcomeQuickViewWF_Load);
this.Activated += new System.EventHandler(this.WelcomeQuickViewWF_Activated);
而不是
protected override void OnActivated(EventArgs e)
{
}
现在我知道第二种方法更面向对象,第一种方法是事件驱动的,我倾向于重构以覆盖 - 有什么理由不这样做?我不想做的是做出一些并不真正需要的改变,纯粹是一种审美选择。
通过订阅您自己的活动,您放弃了对何时进行的控制your当事件有其他订阅者时,将调用代码。通过重写事件引发方法,您可以完全控制何时调用代码。您可以在通知订阅者之前或之后调用它。您的代码也不可能因可取消的事件而被取消。
如果该方法是可重写的,请这样做。否则请注册,因为您别无选择。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)