委托与事件

Posted 邢帅杰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了委托与事件相关的知识,希望对你有一定的参考价值。

委托是一种类型;事件是委托的一个实例。委托的意义:异步多线程、逻辑分离

public delegate void CateAction();//委托

public event CateAction CateActionEvent;//事件

事件只能在声明他的类内部调用(Invoke);委托可以在外部调用(Invoke);事件加了权限控制,保证事件不能在外部直接赋值和调用。

事件执行前要判断不为null;

public void CateEvent()
        {
            if (CateActionEvent!=null)
            {
                //CateActionEvent.Invoke();
                //CateActionEvent();
                foreach (CateAction item in CateActionEvent.GetInvocationList())
                {
                    item.Invoke();//顺序调用
                    //item.BeginInvoke(null, null);//异步调用
                }
            }
        }

 

以上是关于委托与事件的主要内容,如果未能解决你的问题,请参考以下文章

事件与委托

C#编程之委托与事件四

直接事件与事件委托

理解Javascript中的事件绑定与事件委托

冒泡事件与事件委托

C# 再次理解委托事件与函数作为参数