事件的定义

 

//定义事件,关键字'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);
         }
 }    
}

 

posted @ 2022-03-24 17:37  春天花会开,  阅读(63)  评论(0)    收藏  举报