Control.MouseDoubleClick Event

Definition

在双击或多次单击鼠标按钮时发生。Occurs when a mouse button is clicked two or more times.

public:
 event System::Windows::Input::MouseButtonEventHandler ^ MouseDoubleClick;
public event System.Windows.Input.MouseButtonEventHandler MouseDoubleClick;
member this.MouseDoubleClick : System.Windows.Input.MouseButtonEventHandler 
Public Custom Event MouseDoubleClick As MouseButtonEventHandler 

Examples

下面的示例演示如何将事件处理程序附加到 MouseDoubleClick 事件。The following example shows how to attach an event handler to the MouseDoubleClick event.

<Button Name="btn" Background="Red" 
        MouseDoubleClick="ChangeBackground">
  Background
</Button>

下面的示例演示 MouseDoubleClick 事件的事件处理程序。The following example shows the event handler of the MouseDoubleClick event.

void ChangeBackground(object sender, RoutedEventArgs e)
{
    if (btn.Background == Brushes.Red)
    {
        btn.Background = new LinearGradientBrush(Colors.LightBlue, Colors.SlateBlue, 90);
        btn.Content = "Control background changes from red to a blue gradient.";
    }
    else
    {
        btn.Background = Brushes.Red;
        btn.Content = "Background";
    }
}
Private Sub ChangeBackground(ByVal Sender As Object, ByVal e As System.Windows.Input.MouseButtonEventArgs)

    If (btn.Background Is Brushes.Red) Then

        btn.Background = New LinearGradientBrush(Colors.LightBlue, Colors.SlateBlue, 90)
        btn.Content = "Control background changes from red to a blue gradient."

    Else
        btn.Background = Brushes.Red
        btn.Content = "Background"
    End If

End Sub

Remarks

尽管此路由事件看起来是通过元素树执行冒泡路由,但实际上它是由每个 UIElement沿元素树引发的直接路由事件。Although this routed event seems to follow a bubbling route through an element tree, it actually is a direct routed event that is raised along the element tree by each UIElement. 如果在 MouseDoubleClick 事件处理程序中将 Handled 属性设置为 "true,则沿路由的后续 MouseDoubleClick 事件将发生,并且 Handled 设置为 falseIf you set the Handled property to true in a MouseDoubleClick event handler, subsequent MouseDoubleClick events along the route will occur with Handled set to false. 这是控件使用者的高级事件,当用户双击控件并处理应用程序中的事件时,这些用户希望获得通知。This is a higher-level event for control consumers who want to be notified when the user double-clicks the control and to handle the event in an application.

ClickCount 等于2时,要处理鼠标双击的控件作者应使用 MouseLeftButtonDown 事件。Control authors who want to handle mouse double clicks should use the MouseLeftButtonDown event when ClickCount is equal to two. 这将导致 Handled 的状态在元素树中的另一个元素处理事件时,相应地传播。This will cause the state of Handled to propagate appropriately in the case where another element in the element tree handles the event.

Control 类定义 PreviewMouseDoubleClickMouseDoubleClick 事件,但不定义相应的单击事件。The Control class defines the PreviewMouseDoubleClick and MouseDoubleClick events, but not corresponding single-click events. 若要查看用户是否已单击了该控件一次,请处理 MouseDown 事件(或其对应的事件之一),并检查 ClickCount 属性值是否为1。To see if the user has clicked the control once, handle the MouseDown event (or one of its counterparts) and check whether the ClickCount property value is 1.

路由事件信息Routed Event Information

标识符字段Identifier field MouseDoubleClickEvent
路由策略Routing strategy 直接Direct
委托Delegate MouseButtonEventHandler

Applies to