C#订阅事件的两种写法(貌似没啥用)

来源:互联网 发布:sql unique key 编辑:程序博客网 时间:2024/06/17 03:38
今天看到publisher.RaiseCustomEvent += new CustomEventHandler(HandleCustomEvent); 
这样的语法有点懵,不知道为啥这样写。翻了翻资料才发现这玩意儿是C# 1.0 语法。
以下是在微软文档上看到的。想看更多点连接:微软文档
  1. 定义一个事件处理程序方法,其签名与该事件的委托签名匹配。 例如,如果事件基于EventHandler 委托类型,则下面的代码表示方法存根:

    void HandleCustomEvent(object sender, CustomEventArgs a)  {     // Do something useful here.  }  
  2. 使用加法赋值运算符 (+=) 来为事件附加事件处理程序。 在下面的示例中,假设名为 publisher 的对象拥有一个名为 RaiseCustomEvent 的事件。 请注意,订户类需要引用发行者类才能订阅其事件。

    publisher.RaiseCustomEvent += HandleCustomEvent;  

    请注意,前面的语法是 C# 2.0 中的新语法。 此语法完全等效于必须使用 new 关键字显式创建封装委托的 C# 1.0 语法:

    publisher.RaiseCustomEvent += new CustomEventHandler(HandleCustomEvent);