event & EventHandler

Posted wwwbdabc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了event & EventHandler相关的知识,希望对你有一定的参考价值。

event & EventHandler

  在老C#中EventHandler指的是一个需要定义一个delegate,这个delegate是回调的规范。例如:

public delegate void CustomEventHandler(object sender, CustomEventArgs a);

  在新C#中,内置了一个EventHandler<T>范型。

  技术图片

  event是一个关键字,用event关键字可以定义一个event对象。

public event CustomEventHandler RaiseCustomEvent;

  在新C#下,可以像下面这么写:

public event EventHandler<CustomEventArgs> RaiseCustomEvent;

  最后,参数要从EventArgs类继承。

实战Demo

1、定义EventArgs类的子类,以实现自己的事件类型。

  技术图片

2、定义Publisher类,此类中需包含一个event成员变量。

  技术图片

3、Subscriber中实现了向Publisher注册,以及实现一个EventHanlder所商定的方法。

  技术图片

参考:http://msdn.microsoft.com/zh-cn/library/w369ty8x.aspx

以上是关于event & EventHandler的主要内容,如果未能解决你的问题,请参考以下文章

Java中完美实现C#的EventHandler事件模式,代码优雅解耦合

IWebBrowser2 OnBeforeNavigate 事件 - EventHandler

Go语言事件请求处理程序(Event Handler)

解决在SharePoint 2010/2013部署自己的Event Handler后,抛出”不能载入被引用的第三方的程序集&quot;的问题

将元素插入到有序向量中的最有效方法是什么?

12事件