EventHandler在C#中的实现方式

   2024-10-07 5360
核心提示:在C#中,可以通过使用委托和事件关键字来实现事件处理程序。以下是一个简单的示例:首先定义一个委托,用于指定事件处理程序的方

在C#中,可以通过使用委托和事件关键字来实现事件处理程序。以下是一个简单的示例:

首先定义一个委托,用于指定事件处理程序的方法签名:
public delegate void EventHandler(object sender, EventArgs e);
在包含事件的类中定义事件:
public class Publisher{    public event EventHandler MyEvent;    public void RaiseEvent()    {        MyEvent?.Invoke(this, EventArgs.Empty);    }}
创建事件处理程序并将其绑定到事件:
public class Subscriber{    public Subscriber(Publisher publisher)    {        publisher.MyEvent += HandleEvent;    }    public void HandleEvent(object sender, EventArgs e)    {        Console.WriteLine("Event handled");    }}
在Main方法中实例化发布者和订阅者,并调用RaiseEvent方法触发事件:
public static void Main(string[] args){    Publisher publisher = new Publisher();    Subscriber subscriber = new Subscriber(publisher);    publisher.RaiseEvent();}

以上是一个简单的示例,演示了如何在C#中实现EventHandler。在实际应用中,事件处理程序可能会包含更复杂的逻辑,而且可能涉及多个订阅者。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号