新聞中心
C#有很多值得學(xué)習(xí)的地方,這里我們主要介紹C#自定義事件,包括介紹delegate和event專門為C#中事件處理系統(tǒng)提供的等方面。

創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、外貿(mào)營銷網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的靜樂網(wǎng)站設(shè)計(jì)、移動媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
C#自定義事件
C#語言中有77個(gè)關(guān)鍵字,其中delegate和event專門為C#中事件處理系統(tǒng)提供的。
delegate聲明定義一種引用類型,該類型可用于將方法用特定的簽名封裝。委托實(shí)例封裝靜態(tài)方法或?qū)嵗椒?。委托大致類似?C++ 中的函數(shù)指針;但是,委托是類型安全和可靠的。
event指定一個(gè)事件。在C#的類中存在以下成員:域(Fields)、屬性(Properties)、方法(Methods)、索引 (Indexs)、事件(Events),其中事件(Events)成員就是用來聲明一個(gè)類事件的。在類中聲明一個(gè)事件成員一般采用如下的語法形式:public event 委托名 事件名。
本程序是UDP通信的UI測試程序,負(fù)責(zé)接收數(shù)據(jù)報(bào)文,打算要定義簡單的C#自定義事件,首先定義委托,然后定義事件類。
在文件Delegate.cs中定義兩個(gè)委托:
- namespace Communication
- {
- public delegate void DgOnDataRecvFinished(object sender,bool e);//文件接收結(jié)束代理。
- public delegate void DgOnDataRecvStart(object sender,bool e);//文件接收結(jié)束代理。
- public delegate void DgOnDataArrived(object sender,UdpEventArgs e);//數(shù)據(jù)抵達(dá)代理.
C#自定義事件類UdpEventArgs也位于這個(gè)文件中,包括一個(gè)消息屬性和字節(jié)數(shù)組.
- public class UdpEventArgs:EventArgs
- {
- string msg="";
- private byte[] recvdata=null;
- public UdpEventArgs(){}
- public string Msg
- {
- set
- {
- msg=value;
- }
- }
- public byte[] RecvData
- {
- set
- {
- recvdata=value;
- }
- get
- {
- return recvdata;
- }
- }
- }
名稱欄目:C#自定義事件簡單描述
標(biāo)題來源:http://www.5511xx.com/article/cojieie.html


咨詢
建站咨詢
