引发事件
1.事件数据.(如果没有任何关联的事件数据,对事件数据使用EventArgs类.)
命名:事件名加上EventArgs
示例:public class LowChargeEventArgs : EventArgs{...}
2.事件委托.(如果没有任何关联的事件数据,第一步使用EventArgs,使用System.EventHandler作为事件委托.)
命名:事件名加上EventHandler
示例:public delegate void LowChargeEventHandler(object sender,LowChargeEventArgs e);
注意:该委托的第二个参数具务来自第一步的事件数据类型.
3.事件成员.用Event关键字定义,其类型是第二步中事件委托的类型.
示例:public event LowChargeEventHandler LowCharge;
4.发布事件通知的方法.虚拟(可重载)的方法调用事件委托
命名:事件名前加上前缀On
示例:protected virtual void OnLowCharge(LowChargeEventArgs e)
{
if(LowCharge != null)
{
LowCharge(this,e);
}
}
1.事件数据.(如果没有任何关联的事件数据,对事件数据使用EventArgs类.)
命名:事件名加上EventArgs
示例:public class LowChargeEventArgs : EventArgs{...}
2.事件委托.(如果没有任何关联的事件数据,第一步使用EventArgs,使用System.EventHandler作为事件委托.)
命名:事件名加上EventHandler
示例:public delegate void LowChargeEventHandler(object sender,LowChargeEventArgs e);
注意:该委托的第二个参数具务来自第一步的事件数据类型.
3.事件成员.用Event关键字定义,其类型是第二步中事件委托的类型.
示例:public event LowChargeEventHandler LowCharge;
4.发布事件通知的方法.虚拟(可重载)的方法调用事件委托
命名:事件名前加上前缀On
示例:protected virtual void OnLowCharge(LowChargeEventArgs e)
{
if(LowCharge != null)
{
LowCharge(this,e);
}
}
博客介绍了引发事件的步骤。包括事件数据,无关联数据时用EventArgs类,命名为事件名加EventArgs;事件委托,无关联数据用System.EventHandler,命名为事件名加EventHandler;事件成员,用Event关键字定义;发布事件通知的方法,虚拟可重载,命名为事件名前加On,并给出了相应示例。
537

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



