event & EventHandler

event & EventHandler

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

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

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

  event & EventHandler

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

public event CustomEventHandler RaiseCustomEvent;

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

public event EventHandler<CustomEventArgs> RaiseCustomEvent;

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

实战Demo

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

  event & EventHandler

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

  event & EventHandler

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

  event & EventHandler

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

上一篇:iOS 如何优雅地 hook 系统的 delegate 方法?


下一篇:《Spring源码深度解析》二