事件这一名称对于我们.NET码农来说肯定不会陌生,各种技术框架例如WindowsForm、ASP.NET WebForm都会有事件这一名词,并且所有的定义都基本相同。在.NET中,事件和委托在本质上并没有太多的差异,实际环境下事件的运用却比委托更加广泛。
2.1 简述事件的基本使用方法
在Microsoft的产品文档上这样来定义的事件:事件是一种使对象或类能够提供通知的成员。客户端可以通过提供事件处理程序为相应的事件添加可执行代码。设计和使用事件的全过程大概包括以下几个步骤:
下面我们来按照规范的步骤来展示一个通过控制台输出事件的使用示例:
① 定义一个控制台事件ConsoleEvent的参数类型ConsoleEventArgs
/// <summary> /// 自定义一个事件参数类型 /// </summary> public class ConsoleEventArgs : EventArgs { // 控制台输出的消息 private string message; public string Message { get { return message; } } public ConsoleEventArgs() : base() { this.message = string.Empty; } public ConsoleEventArgs(string message) : base() { this.message = message; } }