控制事件 (Windows 窗体 .NET)
控件提供当用户与控件交互或控件状态更改时引发的事件。 本文介绍大多数控件共享的常见事件、由用户交互引发的事件,以及特定于特定控件的事件。 有关 Windows 窗体中事件的详细信息,请参阅事件概述 和处理和引发事件。
有关如何添加或删除控件事件处理程序的详细信息,请参阅 如何处理事件。
常见事件
控件通过基类 Control提供 60 多个事件。 其中包括 Paint 事件,导致绘制控件、与显示窗口相关的事件,例如 Resize 和 Layout 事件,以及低级别鼠标和键盘事件。 某些低级别事件通过 Control 合成为语义事件,例如 Click 和 DoubleClick。 大多数共享事件属于以下类别:
- 鼠标事件
- 键盘事件
- 属性更改事件
- 其他事件
鼠标事件
考虑到 Windows 窗体是用户界面(UI)技术,鼠标输入是用户与 Windows 窗体应用程序交互的主要方式。 所有控件都提供与鼠标相关的基本事件:
- MouseClick
- MouseDoubleClick
- MouseDown
- MouseEnter
- MouseHover
- MouseLeave
- MouseMove
- MouseUp
- MouseWheel
- Click
如需更多信息,请参阅 使用鼠标事件。
键盘事件
如果控件响应用户输入(如 TextBox 或 Button 控件),则会为控件引发相应的输入事件。 为了接收键盘事件,控件必须处于聚焦状态。 某些控件(如 Label 控件)无法聚焦且无法接收键盘事件。 下面是键盘事件的列表:
有关详细信息,请参阅 使用键盘事件。
属性更改事件
Windows 窗体遵循具有变更事件的属性的 PropertyNameChanged 模式。 Windows 窗体提供的数据绑定引擎可识别此模式并与之很好地集成。 创建自己的控件时,实现此模式。
此模式使用属性 FirstName
实现以下规则,例如:
- 将属性命名为:
FirstName
。 - 使用模式
PropertyNameChanged
:FirstNameChanged
为属性创建事件。 - 使用模式
OnPropertyNameChanged
:OnFirstNameChanged
来创建私有或受保护的方法。
如果 FirstName
属性集修改了支持值,则会调用 OnFirstNameChanged
方法。 OnFirstNameChanged
方法引发 FirstNameChanged
事件。
下面是控件的一些常见属性更改事件:
事件 | 描述 |
---|---|
BackColorChanged | 当 BackColor 属性的值更改时发生。 |
BackgroundImageChanged | 当 BackgroundImage 属性的值更改时发生。 |
BindingContextChanged | 当 BindingContext 属性的值更改时发生。 |
DockChanged | 当 Dock 属性的值更改时发生。 |
EnabledChanged | 当 Enabled 属性值发生更改时发生。 |
FontChanged | 当 Font 属性值更改时发生。 |
ForeColorChanged | 当 ForeColor 属性值更改时发生。 |
LocationChanged | 当 Location 属性值发生更改时发生。 |
SizeChanged | 当 Size 属性值更改时发生。 |
VisibleChanged | 当 Visible 属性值更改时发生。 |
有关事件的完整列表,请参阅 控件类的 事件 部分。
其他事件
控件还会根据控件的状态或其他与控件的交互引发事件。 例如,如果控件具有焦点,并且用户按下 F1 键,则会引发 HelpRequested 事件。 如果用户按下窗体上的上下文敏感 帮助 按钮,然后按控件上的帮助光标,也会引发此事件。
另一个示例是,当控件被更改、移动或调整大小时,将触发 Paint 事件。 此事件为开发人员提供了绘制控件和更改其外观的机会。
有关事件的完整列表,请参阅 控件类的 事件 部分。