当前位置 : 主页 > 网络编程 > c#编程 >

C#中的委托和事件

来源:互联网 收集:自由互联 发布时间:2023-01-31
一、定义委托 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#委托事件的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持自由互联。

上一篇:C#图表算法之最小生成树
下一篇:没有了
网友评论