我想知道 Event 的默认返回类型是什么:有人说 Event 没有返回类型;其他人说 Event 有返回类型。谢谢。
问问题
11603 次
2 回答
15
这取决于您声明事件的委托的类型。“典型”事件使用类型EventHandler
或EventHandler<TEventArgs>
返回的委托void
声明,但没有什么禁止使用不同类型的委托声明事件……如果不是最小意外原则 (POLS)。
“典型的”:
public event EventHandler MyVoidEvent;
“风俗”:
public delegate bool MyBoolDelegate(object sender, EventArgs e);
public event MyBoolDelegate MyBoolEvent;
通常,您会将“返回值”放入EventArgs
对象中,这就是事件不需要返回值的原因......但如果他们被告知,它们可以。
于 2013-05-18T16:07:23.420 回答
8
默认情况下,大多数事件处理程序返回 void,但是,处理程序可以返回值。
您可以参考这篇文章以获得进一步的参考:http: //blogs.msdn.com/b/deviations/archive/2008/11/27/event-handlers-returning-values.aspx
于 2013-05-18T15:59:04.850 回答