什么时候应该做以下事情?
class Foo : Control
{
protected override void OnClick(EventArgs e)
{
// new code here
}
}
与此相反?
class Foo : Control
{
public Foo()
{
this.Click += new EventHandler(Clicked);
}
private void Clicked(object sender, EventArgs e)
{
// code
}
}
最佳答案
覆盖而不是附加委托(delegate)将产生更高效的代码,因此通常建议您始终在可能的情况下执行此操作。有关更多信息,请参阅 this MSDN article。这是一个相关的报价:
关于c# - 什么时候应该重写 OnEvent 而不是在继承时订阅事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/159317/