委託和事件

2021-04-13 11:09:50 字數 941 閱讀 3124

主要過程如下:

1.在後台**中,我們可以定義處理程式方法alartrang

2.然後定義委託,引用到處理程式方法的例項。

3.最後將委託新增到事件中。

從而,引發事件時就會呼叫相關的事件處理方法。

若要使用在另乙個類中定義的事件,必須定義和註冊乙個事件處理程式。事件

處理程式必須具有與為事件宣告的委託相同的方法簽名。通過向事件新增事件

處理程式可註冊該處理程式。向事件新增事件處理程式後,每當該類引發該事

件時都會呼叫該方法。

有關闡釋引發和處理事件的完整示例,請參見如何:引發和使用事件。

為事件新增事件處理程式方法

定義乙個具有與事件委託相同的簽名的事件處理程式方法。

public class wakemeup

;...

} 使用對該事件處理程式方法的乙個引用建立委託的乙個例項。呼叫該委託例項

時,該例項會接著呼叫該事件處理程式方法。

// create an instance of wakemeup.

wakemeup w = new wakemeup();

// instantiate the event delegate.

alarmeventhandler alhandler = new alarmeventhandler(w.alarmrang);

將該委託例項新增到事件。引發該事件時,就會呼叫該委託例項及其關聯的事

件處理程式方法。

c#  複製**

// instantiate the event source.

alarmclock clock = new alarmclock();

// add the delegate instance to the event.

clock.alarm += alhandler;

委託和事件

委託的宣告 public delegate void mydelegate string str 注1.委託的定義和方法的定義類似,只是在前面加了乙個delegate,但委託不是方法,它是一種型別。是一種特殊的型別,看成是一種新的物件型別比較好理解。用於對與該委託有相 同簽名的方法呼叫。2.委託相當...

事件和委託

事件是物件傳送的訊息,以發訊號通知操作的發生。操作可能是由使用者互動 例如滑鼠單擊 引起的,也可能是由某些其他的程式邏輯觸發的。引發事件的物件稱為事件傳送方。捕獲事件並對其作出響應的物件叫做事件接收方。在事件通訊中,事件傳送方類不知道哪個物件或方法將接收到 處理 它引發的事件。所需要的是在源和接收方...

委託 和 事件

using system using system.collections.generic using system.linq using system.text public string message 定義乙個委託。委託除了delegate關鍵字。別的應該和賦予的那個方法格式一樣 public...