一、定义委托 delegate void StudentDelegate();//【1】定义一个委托 二、定义一个调用和定义事件的类 /// summary ///定义事件和调用 事件一定要放在一个类里面 /// /summary class InvokeDefine //【2】定
一、定义委托
delegate void StudentDelegate();//【1】定义一个委托
二、定义一个调用和定义事件的类
/// <summary> ///定义事件和调用 事件一定要放在一个类里面 /// </summary> class InvokeDefine //【2】定义一个调用和定义事件的类 { public event StudentDelegate StudentEvent; public void Invoke() { StudentEvent?.Invoke();//?.Null检查运算符 } }
三、订阅者
class EventFunction //【3】订阅者 { public void Student1() { Console.WriteLine("我是订阅者1"); } public void Student2() { Console.WriteLine("我是定订阅者2"); } }
四、订阅事件
static void Main(string[] args) { EventFunction eventFunction = new EventFunction(); InvokeDefine invokeDefine = new InvokeDefine(); invokeDefine.StudentEvent += eventFunction.Student1;//【4】订阅事件 invokeDefine.StudentEvent += eventFunction.Student2; invokeDefine.Invoke(); Console.ReadKey(); }
五、总结
第一点:在定义事件类的外部,他是不能使用=号来操作,只能用+=。
第二点:在定义事件类的外部不能调用 事件。
第三点:事件就是在委托的前面增加一个event关键字。
到此这篇关于C#委托事件的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持自由互联。