一、定义委托 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#委托事件的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持自由互联。
