委托例子

//一般来说,委托的 定义和执行 是在一个类里的, 绑定事件 在另一个类里,通过实例化 发布者  a,然后用 a绑定要执行的事件。

namespace delegatetest
{

//订阅者
public class mainform
{

//具体要执行的方法
public void addproduct(string prodid, string prodname, int num)
{

///....

}

//执行订阅的事件

public void click()
{
//PDA程序是通过反射加载的,而且订阅了多个事件,通过判断继承的接口。

 

//实例化发布者
subform sub = new subform();

//订阅事件
sub.addp += addproduct;
}
}

//发布者

public class subform
{

//声明委托
public delegate void AddProduct(string prodid, string prodname, int num);

//实例化 委托

public AddProduct addp;

//告知订阅者事件
public void click()
{

//执行委托
addp("", "", 2);
}
}
}

posted on 2014-04-29 17:12  习惯简单  阅读(179)  评论(0编辑  收藏  举报

导航