Control.MouseDoubleClick イベント


マウス ボタンが複数回クリックされると発生します。Occurs when a mouse button is clicked two or more times.

 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 

次の例は、イベントハンドラーを MouseDoubleClick イベントにアタッチする方法を示しています。The following example shows how to attach an event handler to the MouseDoubleClick event.

<Button Name="btn" Background="Red" 

次の例は、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.";
        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."

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

End Sub


このルーティングイベントは、要素ツリーを通じてバブルルートに従っているように見えますが、実際には、各 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 イベントが発生し、Handledfalseに設定されます。If 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 クラスは、PreviewMouseDoubleClick イベントと MouseDoubleClick イベントを定義しますが、対応するシングルクリックイベントは定義しません。The Control class defines the PreviewMouseDoubleClick and MouseDoubleClick events, but not corresponding single-click events. ユーザーがコントロールを1回クリックしたかどうかを確認するには、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