首页 > 代码库 > C# 事件

C# 事件

C# 事件

【博主】反骨仔    【原文】http://www.cnblogs.com/liqingwen/p/6057301.html  

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

  在典型的 C# Windows 窗体或 Web 应用程序中,可订阅由按钮和列表框等控件引发的事件。 可以使用 Visual C# 集成的开发环境 (IDE) 来浏览控件发布的事件,并选择想要处理的事件。 IDE 将自动添加空白事件处理程序方法和订阅该事件的代码。 

 

事件具有以下属性

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

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

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

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

  • 当事件具有多个订户时,引发该事件时会同步调用事件处理程序。 若要异步调用事件

  • 事件基于 EventHandler 委托和 EventArgs 基类。

 

事件的订阅和取消

  如果您想编写引发事件时调用的自定义代码,则可以订阅由其他类发布的事件。  例如,可以订阅某个按钮的 click 事件,以使应用程序在用户单击该按钮时执行一些有用的操作。  

  1.使用 Visual Studio IDE 订阅事件

技术分享

图 新建一个 WinForm 项目

技术分享

图 由图1双击时所自动创建的代码

技术分享

图 除了图2,在 InitializeComponent 方法也自动增加了这行代码

 

 

  

C# 事件