c# 里的委托是什么意思 它和事件应该是什么关系啊

http://finesite.cnblogs.com/archive/2006/04/05/255884.html... http://finesite.cnblogs.com/archive/2006/04/05/255884.html 展开
 我来答
百度网友40345a600
2006-07-08 · TA获得超过680个赞
知道答主
回答量:327
采纳率:0%
帮助的人:0
展开全部
delegate就是委托
使用delegate可以动态的决定要调用的方法,其实,delegate就是存放着一个方法的指针,是通过delegate来转向链接那个方法的:
public static delegate De1(string sun,int a);//这里的参数必须要和链接的方法的参数相同(名字不一定要相同, 但是类型一定要)
public static void Sun(string name,int num)
{
for(int x=0;x<num;x++)
{
Console.WriteLine(name);
}
}
public static void Main()
{
De1 link=new De1(Sun);//建立一个新的delegate,同时将它链接到Sun
link("!@#",10); //这里就可以直接进行调用了
}

每一个事件中都包含了很多delegate,触发事件的过程是这样的:
触发事件的指令->将事件中的每个delegate调用一便->在调用delegate的时候,事实上delegate指向了用户所制作的方法,那么也就调用了用户所需要的事件处理方法
下面是对事件的实例:
public static delegate De2(string sun,int a)//delegate是事件的基础条件
public static event De2 OnSun;//这个事件的声明规定了它的类型是De2
public static void Sun(string name,int num)
{
De2(name,num);//这个方法能够触发事件
for(int x=0;x<num;x++)
{
MessageBox.Show(name);
}
}
public static void Main()
{
OnSun+=new De2(on);//为事件增加处理函数
}
public static on(string name,int num)
{
.........//对事件的处理过程
}
广州奥泰斯工业自动化控制设备有限公司_
2023-03-29 广告
日本OPTEX FA光电传感器产品已在中国大陆销售了近30年,产品的高性价比已被广大客户所认可。为更好的服务广大客户,日本株式会社(OPTEX FA)于2013年成立广州奥泰斯工业自动化控制设备有限公司,作为OPTEX FA中国区总部。日本... 点击进入详情页
本回答由广州奥泰斯工业自动化控制设备有限公司_提供
richardbao2000
2006-06-25 · TA获得超过5342个赞
知道大有可为答主
回答量:4457
采纳率:100%
帮助的人:3889万
展开全部
委托相当于一个函数的指针。事件发生后,它需要调用事件响应过程,这时就需要借助委托来调用父对象中的事件响应函数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式