delegate void delegate_name(object sender, EventArgs e)
的委托类型的事件的好处。a) 除了它可以为我们节省一些打字之外,我们使用已定义的委托类型
EventHandler/EventHandler<T>
而不是声明自己的带有签名 delegate void delegate_name(object sender, EventArgs e)
的委托类型还有其他原因吗?b) 我能想到的使用预定义委托类型
EventArgs/EventArgs<T>
的另外两个原因是:
使用特定事件(例如
event EventHandler my_event
)的人将立即知道如何使用该事件?也许一些流行的第三方方法接受
EventHandler/EventHandler<T>
委托类型作为参数,因此如果我们的代码可能会使用这些第三方方法,我们应该使用预定义的委托类型EventHandler/Eventhandler<T>
?