c# – 如何在为事件分配委托时附加EventArgs / custom params?
发布时间:2020-12-16 01:34:16 所属栏目:百科 来源:网络整理
导读:我有这个代码: this.form.Resize += new EventHandler(form_Resize); 但我想在form_Resize事件中为稍后的访问分配一些对象,我该怎么做? 我是否可以访问EventArgs中的数据? 解决方法 您不能“向委托”分配其他数据,但您可以创建form_Resize方法的参数化版
我有这个代码:
this.form.Resize += new EventHandler(form_Resize); 但我想在form_Resize事件中为稍后的访问分配一些对象,我该怎么做? 我是否可以访问EventArgs中的数据? 解决方法
您不能“向委托”分配其他数据,但您可以创建form_Resize方法的参数化版本,然后使用lambda表达式(在C#3中)或匿名委托(C#2)在附加处理程序时指定其他数据.写这个的一种方法如下:
void form_Resize(object sender,EventArgs e,Data additional) { // 'additional' contains whatever you specified when attaching handler } this.form.Resize += (s,e) => form_Resize(s,e,yourAdditionalData); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |