在VS2008中生成事件处理程序
本文关键字:事件处理 程序 VS2008 | 更新日期: 2023-09-27 18:12:24
我试图在windows窗体应用程序中生成一个事件处理程序。当我写
myAlgorithm.nextNodeFound +=
并按'Tab'两次它自动生成一个新的处理程序,但这个处理程序在EventArgs上工作,我需要的是有一个处理程序与CustomEventArgs
一起工作。我试图修改自动生成处理程序的签名,但随后它给出了错误
*没有重载myAlgo_nextNodeFound匹配委托系统。EventHandler *
请建议如何使它工作
看起来问题是您已经将nextNodeFound
事件声明为EventHandler
类型。如果你需要它与你的自定义参数一起工作,你应该使用一个使用正确参数的委托类型…一般的EventHandler<TEventArgs>
类型可能是您想要的:
public event EventHandler<CustomEventArgs> NextNodeFound;
注意,我已经更改了符合。net命名约定的名称。这也是假设CustomEventArgs
派生自EventArgs
-如果它还没有,我建议你这样做。您可能还希望更改名称以指示如何自定义 -例如NodeTraversalEventArgs
或类似的内容。
听起来你可能对。net事件比较陌生——你可能想阅读我关于事件和委托的文章。