国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

關于自定義事件的一點體會

2024-07-21 02:25:11
字體:
來源:轉載
供稿:網友
今天在msdn上搜索文章的時候無意中看到一個涉及 自定義事件 的部分,整天用到的基本都是windows開發環境下ide的自帶事件,比如click什么的,一時竟沒看懂,回頭翻書查了查,才稍微理解了,并加深了印象。雖然以前在java里也用過事件,但在c#里事件必須先定義委托,一時比較亂,整理一下先。

首先定義一個事件的函數簽名(參數的格式)--代理
public delegate void computesalarycallback(string empid,double salary);

在類型中聲明類型所包含的事件名稱,與事件觸發的邏輯
public event computesalarycallback oncomputesalarydone;

在一個函數中,聲明事件觸發的邏輯,換句話說,當如下函數被調用的時候,觸發oncomputesalarydone事件:
public virtual double computesalary( )
{ oncomputesalary( mstrempid,mdblbasesalary);
return mdblbasesalary;
}

定義事件處理函數,以及將事件連接到事件處理函數,連接就像是 委托 到那個函數
public static void salaryhander(string empid,double salary)
{
console.weiteline(”員工:員工代號={0},工資={1}”,empid,salary);
}

oncomputesalarydone+=new computesalarycallback(salaryhandler);


以上就完成了一個事件的整體,一旦調用computesalary()函數,就會觸發事件oncomputesalarydone,并引發事件處理函數。如果連接到多個事件處理函數,則會依次執行連接的時間處理函數。

另外可以把事件定義放到組件當中,然后在其他類里聲明事件處理函數,進行處理。
中國最大的web開發資源網站及技術社區,
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 崇明县| 台州市| 柳州市| 广东省| 潜山县| 定边县| 平湖市| 平乡县| 万载县| 镇原县| 紫阳县| 瓦房店市| 双桥区| 布拖县| 武冈市| 安吉县| 文化| 永胜县| 乐平市| 军事| 稷山县| 仁寿县| 伽师县| 云安县| 江城| 珠海市| 化州市| 湟中县| 卢龙县| 额尔古纳市| 静乐县| 临猗县| 芷江| 区。| 雷波县| 四平市| 泰宁县| 岳阳县| 砚山县| 乃东县| 玛曲县|