在事件处理

问题描述:

需要帮助我有一个委托在事件处理

delegate string Mathop<T,F>(T a,F b); 

,我宣布一个事件像

event Mathop<T,F> someevent; 

但是在这里,我得到一个错误。它说'T'找不到。我希望我的Mathop委托人担任我的活动的事件处理员。

我在做什么错在这里。

您需要将事件放在需要输入参数的类中

class C<T, F> 
{ 
    event Mathop<T, F> someevent; 
} 

不能同意这种没有定义具体类型的事件 - 想象一下,如果你能 - 你可以只要任何委托添加到该事件,因为它花了两个参数,并返回一个字符串!

与上面的代码,你现在应该能够做到像

new C<Int32, Int32>().someevent += MyMethod 

这里的MyMethod有签名

String MyMethod(Int32 a, Int32 b); 
+0

+1 @Alex完美。我已经能够解决它。 – 2010-07-05 12:00:49