## 1、定義乙個事件的步驟 ##
### (1)定義乙個委託型別: ###
public delegate onedelegate(int a,int b);
public event onedelegate eventa;
## 2、事件的理解 ##
### (1)事件事實上會擴充套件為兩個隱藏的公共方法 ###
add_eventa()
remove_eventa()
### (2)監聽傳入的事件 寫法: ###
nameofobject.nameofevent += new relateddelegate(functiontocall);
### (3)登出監聽傳入的事件 寫法: ###
nameofobject.nameofevent += new relateddelegate(functiontocall);
//其中functiontocall代表事件的處理方法
### (4)+=、-=操作符對應上述的add_與remove_方法。 ###
### (5)事件的觸發 寫法: ###
nameofevent(eventargs e)//其中引數與對應的委託型別的引數一致
### (6)舉例說明: ###
//1委託宣告
public delegate void relateddelegate(string str);
//2事件宣告
public event relateddelegate nameofevent;
//3定義事件處理函式
public void functiontocall(string str)
//4註冊監聽事件
nameofobject.nameofevent += new relateddelegate(functiontocall);
//5觸發事件
nameofevent("事件被觸發了");
## 3、匿名方法 ##
使用匿名方法可以將上述例項的步驟1、3、4整合
步驟變為:
//1事件宣告
public event relateddelegate nameofevent;
//2註冊事件
nameofevent += delegate(string str)
;//5觸發事件
nameofevent("事件被觸發了");
理解C 事件
如果做過gui程式開發,可能對上面的描述會比較熟悉。在gui程式中,單擊乙個button會觸發乙個click事件,然後會執行一系列的操作,這一系列的操作就被存放在乙個委託例項中。接下來我們就看看事件。使用委託中的問題 回到前面文章中蘋果和富士康的例子,蘋果將iphone的組裝 包裝和運輸的工作全部委...
理解C 事件
前面文章中介紹了委託相關的概念,委託例項儲存這乙個或一組操作,程式中將在某個特定的時刻通過委託例項使用這些操作。如果做過gui程式開發,可能對上面的描述會比較熟悉。在gui程式中,單擊乙個button會觸發乙個click事件,然後會執行一系列的操作,這一系列的操作就被存放在乙個委託例項中。接下來我們...
C 事件(個人理解)
在現實中,有數不清的可以稱之為事件的情況,比如你拿起了水杯,給手機充電,做乙個專案時,小組負責人給你下達了任務,上市公司的總公司給其旗下的子公司下達任務等等,我們今天就用舉例中的最後乙個例子來說明一下,到底什麼是事件?首先要說的就是乙個個人認為很重要的概念,事件其實就是委託,但是在某些地方又不能這樣...