DOTNET事件处理的步骤与实现
第一步:定义一个合适的委托
例:
delegate void MoveEventHandler(Object Sender,MoveEventArgs e)
注意:DotNet框架中的标准委托的定义如下:
Public delegate void EventHabdler(Object Sender,EventArgs e)
参数说明:
(1)Sender:表示消息的发送方;
(2)EventArgs:默认的消息处理类(不含附加数据)
(3)强烈建议使用标准的委托定义事件
第二步:定义一个合适的消息
由于标准的EventArgs类不包含附加数据,可继承此类,使该类包含与特定时间相关的信息,
如: Public class MoveEventArgs
{ Public int newPosition;
Public MoveEventArgs(int newPosition)
{
this.newPosition = newPosition
}
}
第三步:发送方声明事件并设置激发事件的代码
声明事件:Public event 委托类型与事件标识
必须使用Public声明事件,否则接收方就不能登记事件处理器,激发一个事件的代码如下:
if (事件标识 != null)
{
MoveEventArgs args = new MoveEventArgs(value1);
}
事件标识(this,args)(注意:次事件为dotnet标准事件)
另:建议直接使用标准系统