自定义控件的事件传递,一般都是有参数的,我们也想需要是能传递参数,下面给个简单的实例,总结如下:
需要使用delegete 来派生新的EventArgu,使用新的:
1:
声明自己的派生类,用来传递参数(EventArgs)
class myEventArgs:EventArgs
{
public myEventArgs( parameter )
{ }
...
. ...//成员变量
}
2 声明自己的委托类型:
public delegate void MyEventHandler(object sender,myEventArgs e);
3 声明事件
public Event MyEventHandler OnSelectChanged;
4
在需要促发的地方添加如下:
myEventArgs e=new myEventArgs(参数);
if(OnSelectChanged!=null)
{
OnSelectChanged(this,e);
}
这样的几步就实现了事件的添加,它是可以传递参数的事件。
这个在我写c#自定义控件的时候大量被使用。
本文介绍如何在C#中为自定义控件创建可传递参数的事件。通过派生EventArgs类、定义委托类型及声明事件,实现事件处理过程中的参数传递。
139

被折叠的 条评论
为什么被折叠?



