事件的定义
//定义事件,关键字'event',类型EventHandler<LogPrintEventArgs>
public event EventHandler<LogPrintEventArgs> LogPrintCompleted
{
add
{
_logPrintCompleted -= value;//先减后加,避免重复订阅
_logPrintCompleted += value;
}
remove
{
_logPrintCompleted -= value;
}
}
public event EventHandler<LogPrintEventArgs> _logPrintCompleted = null;
//触发事件的方法
private void onRaiseSanpCompleted(object sender,LogPrintEventArgs e)
{
if(_logPrintCompleted != null)
{
Delegate[] delegates = _logPrintCompleted.GetInvocationList();
if(delegates != null)
foreach(EventHandler<LogPrintEventArgs> spi in delegates)
{
spi.BeginInvoke(this,e,null,null);
}
}
}