C# 中如何自定义事件?
Wason (zhuhai)
本次只用一个实例,来说明在C#中如何使用自定义事件。
写一个类,此类包含了自定义事件: onSendMsg。
文件名:ChatServer.cs
public class ChatServer
{
public delegate void MyEventHandler(string msg);
public event MyEventHandler onSendMsg;
public void SendMsg()
{
onSendMsg("开始发送消息!");
}
}
文件名:Form1.cs
///////////////////////////////////
//类事件的处理代码如下
private void SendMsgTest()
{
//创建ChatServer类的实例
Server f_Server;
f_Server = new Server();
f_Server.onSendMsg += new Server.MyEventHandler(this.OnSendMsg);
//调用 f_Server的SendMsg()函数
f_Server.SendMsg();
}
//处理 onSendMsg 事件代码
protected void OnSendMsg(string msg)
{
//输出调试信息
Console.WriteLine(msg);
}
……