C#的事件、枚举和委托
2010-06-03 20:37
197 查看
下面的例子演示了如何使用事件(event)、枚举(Enumeration)和委托(delegate),就是这么简单。
private void PowerModeChangedCallback(Object sender, PowerModeChangedEventArgs e) {
[/code]
其中:PowerModes是枚举,PowerModeChangedEventHandler是委托,SystemEvents.PowerModeChanged是事件成员变量,枚举和委托实际上是“类”,之所以称之为“类”是因为C#中全是类。可以看到:
1. 枚举是只有静态成员变量的类。
2. 事件是委托对象,用来注册和触发具体的事件处理函数。
3. 委托是对回调函数的封装,实际上,回调函数具体指的就是函数指针。
class Foo {
private void PowerModeChangedCallback(Object sender, PowerModeChangedEventArgs e) {
[/code]
Console.WriteLine("Power mode changed.");
}
private void Bar() {
// 此处用到了delegate和event,注册了系统事件
SystemEvents.PowerModeChanged += new PowerModeChangedEventHandler(PowerModeChangedCallback);
// 枚举和类的static成员变量一样
PowerModes pm = PowerModes.Resume;
}
}
其中:PowerModes是枚举,PowerModeChangedEventHandler是委托,SystemEvents.PowerModeChanged是事件成员变量,枚举和委托实际上是“类”,之所以称之为“类”是因为C#中全是类。可以看到:
1. 枚举是只有静态成员变量的类。
2. 事件是委托对象,用来注册和触发具体的事件处理函数。
3. 委托是对回调函数的封装,实际上,回调函数具体指的就是函数指针。
相关文章推荐
- 不理解C#的枚举,委托和事件.请求高手给个通俗易懂的例子。就是有代码和对代码的详细解释。十分谢谢
- C# 清除控件的所有事件委托
- C# 中的委托和事件
- C# 中的委托和事件详细讲解
- C#中的委托和事件(上)
- c#中的委托与事件
- c#中的delegate(委托)和event(事件)
- C# 中的委托和事件
- 对事件的理解——看张子阳的C# 中的委托和事件之后
- C# 中的委托和事件
- C# 中的委托和事件
- C# 中的委托和事件 以及观察者模式
- C# 中的委托和事件
- C#,由委托到Observer设计模式,再到事件机制
- C# 中的委托和事件
- C# 中的委托和事件(下)_转载
- c#关于委托和事件(二)(介绍的很详细)
- C# 中的委托和事件 续
- C#中的委托和事件(下)
- C# 关于委托和事件的妙文:通过一个例子详细介绍委托和事件的作用;Observer模式简介