标签:
事件是建立在委托的基础之上的。
http://www.cnblogs.com/lystory/p/5085786.html
public class 事件参数 { public 事件参数(string s) { Text = s; } public String Text { get; private set; } // readonly } public class 事件发布者 { /// <summary> /// 申明一个委托 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public delegate void 委托1(object sender, 事件参数 e); /// <summary> /// 申明一个委托型事件 /// </summary> public event 委托1 事件1; public virtual void 执行(string msg) { ///如果事件被订阅(有订阅者)传信号给订阅者(这个信息是两个参数,object sender, 事件参数 e ) if (事件1 != null) 事件1(this, new 事件参数(msg)); } } class Program { static void Main(string[] args) { 事件发布者 f = new 事件发布者(); ///订阅这个事件 f.事件1 += f_事件1; f.执行("帮我做一件事情"); Console.ReadLine(); } /// <summary> /// 事件接收者 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> static void f_事件1(object sender, 事件参数 e) { Console.WriteLine("我是事件接收者:你给我的命令是:{0}", e.Text); } }
运行结果:
C#事件在编程中无处不在。我们的OnClick,其背后都是事件做出来的
观察者模式就是以事件为基础,还有多线程编程中,离不开事件。
理解了委托就能理解事件,事件是建立在委托的基础之上。
参考文档
http://www.cnblogs.com/reommmm/archive/2009/03/23/1419573.html
标签:
原文地址:http://www.cnblogs.com/lystory/p/5089338.html