在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1、声明一个委托类 public delegate SomethingChangedHandler(object sender,EventArgs e);
2、在你的类中声明一个事件绑定到该委托 public event SomethingChangedHandler Changed; 3、在相应的方法中触发此事件 public void ChangeSomething() { Changed(this,new EventArgs); //触发事件 } 4、在调用者订阅事件 your class's instance.Changed+=new SomethingChangedHandler(你的方法名); 5、取消订阅 订阅该事件的对象.Changed-=new SomethingChangedHandler(你的方法名); 注意:因为c#中事件是通过委托实现的,而委托不能被继承,所以导致事件只能在其定义的类中按事件名(该事件委托的参数...) 的形式触发。如果一个事件需要在派生类中被触发,可以在基类中定义一个触发该事件的方法 SendSomeEvent(),派生类中重写该方法,并调用base.SendSomeEvent(); 看下面的实例: namespace ConsoleApplication3 static void Main(string[] args) using System; public class Publisher //出版社 class Subscriber //订阅者 class story
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论