亲宝软件园·资讯

展开

C#委托事件

農碼一生 人气:0

一、定义委托

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

加载全部内容

相关教程
猜你喜欢
用户评论