- A+
所属分类:.NET技术
委托就是把一个函数封装成对象,强化了c#的面向对象特性, 用法还在摸索
事件是委托的特殊拓展,事件的使用主要包括:
1.被委托者的创建
public delegate void XXEventHandler(Parameter A,~); //多播时返回只能是void,且使用该被委托者时 3,5中的参数必须保持一致
2.定义事件
public event XXEventHandler XXEvent;
3.被委托者服务(自定义方法)的实现 //即事件发生时,需要被委托者做什么事情
void Serve(Parameter A,~){~}
4.委托服务的订阅(事件关联)
触发者.XXEvent += new XXEventHandler(Serve); //参数可以是静态方法也可以是某个实例的自有方法,在这一步我们定义的方法已经被封装
//事件一般定义在触发者的类里,比如按钮被点击这个事件, 点击事件就被定义在Button类里
5.事件触发
触发者.XXEvent(paraA,~);
这样在事件被触发时,被委托者就可以执行我们订阅的服务