本文由机器翻译。若要查看英语原文,请勾选“英语”复选框。 也可将鼠标指针移到文本上,在弹出窗口中显示英语原文。
翻译
英语

ButtonBase.Click 事件

 

发生时 Button 时发生。

命名空间:   System.Windows.Controls.Primitives
程序集:  PresentationFramework(位于 PresentationFramework.dll)

public event RoutedEventHandler Click

用户可以引发 Click 事件通过使用 AccessText 或通过在控件有焦点时按 enter 键或空格键。 当用户按空格键后,控制集 IsPressedtrue 并会捕获鼠标。 将结果是,该控件如引发鼠标事件 MouseEnterIsMouseDirectlyOverChanged 请注意,使用 AccessText 或 enter 键不会更改 IsPressed 或捕获鼠标,但它确实增加 Click 事件。

ButtonBase 标记 MouseLeftButtonDown 事件,如在处理 OnMouseLeftButtonDown 方法,并引发 Click 事件。 因此, OnMouseLeftButtonDown 事件将永远不会发生的控件,继承自 ButtonBase 相反,将附加到一个事件处理程序 PreviewMouseLeftButtonDown 事件,或者调用 AddHandler(RoutedEvent, Delegate, Boolean)handledEventsToo 设置为 true

标识符字段,

ClickEvent

路由策略

冒泡

delegate

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;
}

.NET Framework
自 3.0 起可用
Silverlight
自 2.0 起可用
Windows Phone Silverlight
自 7.0 起可用
返回页首
显示: