ButtonBase.Click 事件
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在单击 Button 时发生。
public:
event System::Windows::RoutedEventHandler ^ Click;
public event System.Windows.RoutedEventHandler Click;
member this.Click : System.Windows.RoutedEventHandler
Public Custom Event Click As RoutedEventHandler
事件类型
示例
以下示例显示了三个按钮,这些按钮以三种不同的方式响应单击。
悬停 - 当用户将鼠标悬停在按钮上时,第一个按钮将更改颜色
按 - 第二个按钮要求在鼠标指针位于按钮中时按下鼠标。
释放 - 在按钮中按下并释放鼠标之前,第三个不会重置按钮的背景色。
<Button Name="btn1" Background="Pink"
BorderBrush="Black" BorderThickness="1"
Click="OnClick1" ClickMode="Hover">
ClickMe1
</Button>
<Button Name="btn2" Background="LightBlue"
BorderBrush="Black" BorderThickness="1"
Click="OnClick2" ClickMode="Press">
ClickMe2
</Button>
<Button Name="btn3"
Click="OnClick3" ClickMode="Release">
Reset
</Button>
void OnClick1(object sender, RoutedEventArgs e)
{
btn1.Background = Brushes.LightBlue;
}
void OnClick2(object sender, RoutedEventArgs e)
{
btn2.Background = Brushes.Pink;
}
void OnClick3(object sender, RoutedEventArgs e)
{
btn1.Background = Brushes.Pink;
btn2.Background = Brushes.LightBlue;
}
Private Sub OnClick1(ByVal sender As Object, ByVal e As RoutedEventArgs)
btn1.Background = Brushes.LightBlue
End Sub
Private Sub OnClick2(ByVal sender As Object, ByVal e As RoutedEventArgs)
btn2.Background = Brushes.Pink
End Sub
Private Sub OnClick3(ByVal sender As Object, ByVal e As RoutedEventArgs)
btn1.Background = Brushes.Pink
btn2.Background = Brushes.LightBlue
End Sub
注解
当控件具有焦点时,AccessText用户可以使用 或 按 Enter 或空格键来引发Click事件。 当用户按空格键时,控件会将 设置为 IsPressedtrue
并捕获鼠标。 因此,控件将引发鼠标事件,例如 MouseEnter 和 IsMouseDirectlyOverChanged。 请注意, AccessText 使用 或 ENTER 不会更改 IsPressed 或捕获鼠标,但会引发 Click 事件。
将 ButtonBaseMouseLeftButtonDown 事件标记为在 方法中 OnMouseLeftButtonDown 处理,并引发 Click 事件。 因此, OnMouseLeftButtonDown 对于继承自 ButtonBase的控件,事件永远不会发生。 相反,请将事件处理程序附加到 PreviewMouseLeftButtonDown 事件,或使用 设置为 true
调用 AddHandler(RoutedEvent, Delegate, Boolean)handledEventsToo
。
路由事件信息
标识符字段 | ClickEvent |
路由策略 | 鼓 泡 |
委托 | RoutedEventHandler |