- ·上一篇内容:海马哥零间隙停车,超牛
- ·下一篇内容:C#中的匿名方法
C#中的事件
事件(event)被广泛用于对象间的通信,例如Windows的应用程序就是基于消息机制的。C# 事件除了表示发生了某个有意义的事件外,还表示已经定义了一个可以处理通知的对象(委托)。
事件的两种声明格式在前面的类成员说明中已经给出。
即平凡事件格式:
[[属性]] [事件修饰符] event 委托类型 标识符[ = 表达式 或 数组初始化器][, ……];
或非平凡事件格式:
[[属性]] [事件修饰符] event 委托类型 事件名 {
[[属性]] add {……}
[[属性]] remove {……}
}
其中,事件修饰符与方法修饰符的相同。
例如(鼠标单击事件Click):
// 定义
public delegate void EventHandler(object sender, System.EventArgs e);
public class Button {
public event EventHandler Click;
public void Reset() {
Click = null;
}
}
// 使用
using System;
public class Form1 {
public Form1() {
// 为Button1的Click事件添加事件处理程序Button1_Click
Button1.Click += new EventHandler(Button1_Click);
}
Button Button1 = new Button();
void Button1_Click(object sender, EventArgs e) {
Console.WriteLine("Button1 was clicked!");
}
public void Disconnect() {
Button1.Click -= new EventHandler(Button1_Click);
}
}
本文源自:翔宇亭——IT乐园(http://www.biye5u.com),转载请保留此信息!
微信搜索“优雅的代码”关注本站的公众号,或直接使用微信扫描下面二维码关注本站公众号,以获取最新内容。
个人成长离不开各位的关注,你的关注就是我继续前行的动力。