如果我为我的Windows应用程序创建Abstract BaseForm
,我可以在加载应用程序表单时使用它来执行常见操作。我还可以override
OnLoad
方法,或我订阅Load
事件(BaseForm_Load
)。
从设计和性能的角度来看哪种方法更好?
答案 0 :(得分:5)
通常,如果要实现基类(即:子类化Form),最好覆盖基类方法。
这样做有多种原因 - 这些方法通常首先发生,并始终保证顺序(如果您使用该事件,其他方法可以通过可能干扰您的方法的其他订阅者运行)。此外,这样做的开销也略微减少了。
可能最好的理由是,这是公认的做法,它使您的代码更易于维护,尤其是其他开发人员。
答案 1 :(得分:1)
除非我需要修改OnLoad()行为,否则我更愿意使用订阅Load事件。它比较慢,但我认为它在概念上更正确。