事件和委託示例

2021-06-16 15:48:58 字數 2534 閱讀 1403

1、timer的elapsed事件

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.timers;

namespace timer的elapsed事件

", e.signaltime.tolongtimestring());

}static void main(string args)

}}

2、事件發行者

using system;

using system.collections.generic;

using system.linq;

using system.text;

namespace 事件發行者

public event eventhandler event1;

private event eventhandler event2;

public event eventhandler event2

else

console.writeline("提供的level值太低,未能引發事件event2!");}}

remove}}

protected virtual void onevent1(eventargs e)

protected virtual void onevent2(eventargs e)

public void start()

}class program

public static void pub_event2(object sender,eventargs e)

static void main(string args)

}}

3、特定事件處理

using system;

using system.collections.generic;

using system.linq;

using system.text;

namespace 特定事件處理

}public class firealarm}}

class firehandlerclass

void extinguishfire(object sender,fireeventargs e)

呼叫extinguishfire方法", sender.tostring());

if (e.ferocity < 2)

裡的火無大礙,我用水把它澆滅", e.room);

}else if (e.ferocity < 5)

console.writeline("我用滅火器把裡的火撲滅", e.room);

else

console.writeline(" 裡的火失去控制了,我給消防隊打**", e.room);}}

class program

}}

4、自定義事件類

using system;

using system.collections.generic;

using system.linq;

using system.text;

namespace 自定義事件類

鍵\n", cki.key);

if(cki.key==consolekey.escape) break;}}

protected static void myhandler(object sender,consolecanceleventargs e)

鍵", e.specialkey);

console.writeline("cancel屬性值為", e.cancel);

console.writeline("設定cancle屬性為true……");

e.cancel = true;

console.writeline(" cancel屬性值已被設定為", e.cancel);

console.writeline("控制台讀操作現已恢復……");}}

}

5、自定義事件示例

using system;

using system.collections.generic;

using system.linq;

using system.text;

namespace 自定義事件示例}}

public class firehanldlerclass

*/public void extinguishfire(object sender,eventargs e)

呼叫……", sender.tostring());

console.writeline(" 著火了,趕快來救火啦………………\n");}}

class program

}}

委託和事件使用示例

net 的事件模型建立在委託機制之上,透徹的了解了委託才能明白的分析事件。可以說,事件是對委託的封裝,從委託的示例中可知,在客戶端可以隨意對委託進行操作,一定程度上破壞了面向的物件的封裝機制,因此事件實現了對委託的封裝。下面,通過將委託的示例進行改造,來完成乙個事件的定義過程 public clas...

C 委託和事件的使用示例

一 委託 使用委託時要先例項化,和類一樣,使用new關鍵字產生委託的新例項,然後將乙個或者多個與委託簽名匹配的方法與委託例項關聯。隨後呼叫委託時,就會呼叫所有與委託例項關聯的方法。與委託關聯可以是任何類或者結構中的方法,可以是靜態方法,只要是可以訪問的方法都可以。1.建立乙個委託型別使用關鍵字del...

關於委託和事件的示例(原創)

關於委託和事件,許多高手都已經對此進行了很詳盡的描述,昨晚突然想到乙個情景,於是今天寫了這個委託和事件的例子出來,純粹是為了練習一下,也希望這篇隨筆對您有幫助!情景大概是這樣的 有乙個老師,他教好幾個班級,然後每次考試後,他都會小小懲罰成績低於幾個班級成績的平均分的同學,同學們自然會很怕受罰啊,考完...