1. 程式人生 > >C#事件event_161205

C#事件event_161205

  • event必須宣告在一個類裡面
  • 事件和方法屬性一樣,是類或者結構的成員

宣告一個event

calss Incrementer

{

public event Eventhandler CountedADozen;

Eventhandle 委託型別

Counted 事件名

}

訂閱事件

訂閱者向事件新增事件處理程式。必須有和事件的委託相同的返回型別和簽名

incrementer.CountedADozen+=IncrementDozensCount;例項方法

incrementer.CountedADozen+=ClassB.CounterHandleB;靜態方法

incrementer.CountedADozen+=new EventHandle.(cc.CounterHandleC);委託形式

incrementer.CountedADozen+=  delegate { DozensCount+;}匿名形式

事件用在GUI上,標準模式是EventHandler

1. 第一個引數用來儲存觸發事件的物件,可以匹配任何型別的例項

2.第二個引數用於儲存狀態資訊

3.返回型別是void

public delegate void EventHandler(object sender, EventArgs e);

EventArgs不能傳遞任何引數,

如果希望傳遞引數,需要宣告一個派生於EventArgs的類,