C委託與事件的例子

2021-04-04 09:31:33 字數 1951 閱讀 2015

第乙個例子

public delegate void eateventhandler(object sender, eateventargs e);

這個的定義也可以不要這樣.可以直接就定義乙個引數

public delegate void eateventhandler(string e); 但然用的時候的引數要相對應好哦

using system;

namespace nseventsample

////// 這個委託用來說明處理吃飯事件的方法的方法頭(模式)

///public delegate void eateventhandler(object sender, eateventargs e);

////// 引發吃飯事件(eateevent)的類master(主人),這個類必須

/// 1.宣告乙個名為eatevent的事件: public event eateventhandler eatevent;

/// 2.通過乙個名為oneatevent的方法來引發吃飯事件,給那些處理此事件的方法傳資料;

/// 3.說明在某種情形下引發事件呢?在餓的時候。用方法hungrg來模擬。

///public class master

當主人餓的時候,他會指定吃飯地點和消費金額。

public void hungry(string restrauntname, decimal moneyout)

eateventargs e = new eateventargs();

e.restrauntname = restrauntname;

e.moneyout = moneyout;

console.writeline("主人說:");

console.writeline("我餓了,要去吃飯,消費元", e.restrauntname, e.moneyout);

引發事件

oneatevent(e);

}////// 類servant(僕人)有乙個方法arrangefood(安排食物)來處理主人的吃飯事件

///public class servant

", e.restrauntname);

console.writeline("準備消費 -- 元 ", e.moneyout);

console.writeline("好的,正給您安排

console.writeline("主人,您的食物在這兒,請慢用");

}////// 類god安排qinshihuang(秦始皇)的僕人是lisi(李斯),並讓李斯的arrangefood

/// 方法來處理qinshihuang的吃飯事件:qinshihuang.eatevent += new eateventhandler(lishi.arrangefood);

///public class god

}第二個例子**於:

比如說乙個公司(場景),你是老闆,手下有兩個員工,小張和小李。你命令小張注意小李,在開發軟體工作的時候如果上網打遊戲,你就記錄下來,從小李工資裡扣100元錢。這個實際上就是現實中的委託。

現在給出乙個**,c#控制台程式,編譯執行通過

using system;

namespace csharpconsole

} // 負責扣錢的人

public class 小王

public void 扣錢(object sender,eventargs e)

}// 如果玩遊戲,則引發事件

public class 小張

public int 錢 // 此屬性可以操作小張的錢。

set}public void 玩遊戲()

{ console.writeline("小張開始玩遊戲了.....");

console.writeline("小張:cs好玩,哈哈哈! 我玩.....");

system.threading.thread.sleep(500);

C委託與事件

我們拋棄各種c 參考書中桀驁難懂的事件與委託概念,設想乙個情景來理解事件與委託的使用 有一家it公司,董事長不希望自己的雇員在上班時間玩遊戲,但又不可能每時每刻都盯著每個雇員,因此,他希望使用一種新的方式實現監視雇員的效果 如果有雇員違反規定,某個裝置或專門的監查人員將自動發出乙個訊息通知他,董事長...

c委託與事件詳解

c 委託與事件詳解.txt花前月下,不如花錢 日 下。葉子的離開,是因為風的追求還是樹的不挽留?乾掉熊貓,我就是國寶!別和我談理想,戒了!委託和事件在 framework中的應用非常廣泛,然而,較好地理解委託和事件對很多接觸c 時間不長的人來說並不容易。它們就像是一道檻兒,過了這個檻的人,覺得真是太...

C委託事件

有事件,就會有對事件進行處理的方法,而事件和處理方法之間是怎麼聯絡起來的呢?委託就是他們中間的橋梁,事件發生時,委託會知道,然後將事件傳遞給處理方法,處理方法進行相應處理。事件的型別一定是委託,委託為引發事件的類擔當事件傳送器的角色 比如在winform中最常見的是按鈕的click事件,它是這樣委託...