事件(C# 编程指南)

或对象可以通过事件向其他类或对象通知发生的相关事情。 发送(或引发)事件的类称为“发布者”,接收(或处理)事件的类称为“订阅者”。

在典型的 C# Windows 窗体或 Web 应用程序中,可订阅由按钮和列表框等控件引发的事件。 可以使用 Visual C# 集成开发环境 (IDE) 来浏览控件发布的事件,并选择想要处理的事件。 借助 IDE,可轻松自动添加空白事件处理程序方法以及要订阅该事件的代码。 有关详细信息,请参阅如何订阅和取消订阅事件

事件概述

事件具有以下属性:

  • 发行者确定何时引发事件;订户确定对事件作出何种响应。

  • 一个事件可以有多个订户。 订户可以处理来自多个发行者的多个事件。

  • 没有订户的事件永远也不会引发。

  • 事件通常用于表示用户操作,例如单击按钮或图形用户界面中的菜单选项。

  • 当事件具有多个订户时,引发该事件时会同步调用事件处理程序。 若要异步调用事件,请参阅 “使用异步方式调用同步方法”。

  • 在 .NET 类库中,事件基于 EventHandler 委托和 EventArgs 基类。

有关详细信息,请参见:

C# 语言规范

有关详细信息,请参阅 C# 语言规范中的事件。 该语言规范是 C# 语法和用法的权威资料。

C# 3.0 手册(第三版):面向 C# 3.0 程序员的超过 250 个解决方案中的委托、事件和 Lambda 表达式

学习 C# 3.0:C# 3.0 基础知识中的委托和事件

另请参阅