[.NET] C# 知识回顾
- 作者: 五速梦信息网
- 时间: 2026年04月04日 13:58
二、事件的属性汇总
发行者确定何时引发事件;订阅者决定如何对事件作出响应。
一个事件可以被多个类或对象进行订阅,订阅者可以自由地选择合适的方式进行处理。
没有订阅者进行订阅的事件永远也不会被触发
WinForm 和 WebForm 中的事件通常用来表示用户执行的某项操作。
当一个事件包含多个订阅者时,在触发该事件的同时会默认以同步的形式调用事件处理程序。
事件基于 EventHandler 委托和 EventArgs 基类。
三、事件的订阅和取消
1.用 IDE 订阅事件

图3-1-1 新建一个 WinForm 项目

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

图3-1-3 除了图2,在 InitializeComponent 方法也自动增加了这行代码
2.以编程方式订阅事件
假设现在是一个新的 WinForm 程序,我们通过手动的方式自己创建事件。在 InitializeComponent 方法下面输入 this.Load +=,然后会出现提示,这时我们按下“Tab 键”,

图3-2-1
会发现也会自动创建事件处理程序,效果跟上一节的直接双击空白处创建的代码可以说是一致的,代码如下:
这次,我们直接采用 lambda 方式完成事件的注册:点击空白处显示鼠标点击时的坐标。
$

图3-2-2
3.用匿名方法订阅事件
【注意】建议不要使用匿名函数来订阅事件,因为这样会间接的增加取消订阅时的难度。除非你确定自己不会取消订阅。
4.取消订阅
传送门
《C# 知识回顾 - 委托 delegate》、《C# 知识回顾 - 委托 delegate (续)》
【参考】https://msdn.microsoft.com/zh-cn/library/awbftdfh(VS.80).aspx
【参考】微软 MSDN 官方文档
相关文章
-
[51CTO]给您介绍Windows10各大版本之间区别
[51CTO]给您介绍Windows10各大版本之间区别
- 互联网
- 2026年04月04日
-
[ACM] HDU 1400 Mondriaan's Dream (状态压缩,长2宽1长方形铺满)
[ACM] HDU 1400 Mondriaan's Dream (状态压缩,长2宽1长方形铺满)
- 互联网
- 2026年04月04日
-
[android] android 获取网络连接信息
[android] android 获取网络连接信息
- 互联网
- 2026年04月04日
-
[ PHP+jQuery ] ajax 多级联动菜单的应用:电商网站的用户地址选择功能 ( 二 )
[ PHP+jQuery ] ajax 多级联动菜单的应用:电商网站的用户地址选择功能 ( 二 )
- 互联网
- 2026年04月04日
-
[ JS 进阶 ] 闭包,作用域链,垃圾回收,内存泄露
[ JS 进阶 ] 闭包,作用域链,垃圾回收,内存泄露
- 互联网
- 2026年04月04日
-
@umijsplugin
@umijsplugin
- 互联网
- 2026年04月04日






