Control.PreviewMouseDoubleClick イベント

定義

ユーザーがマウス ボタンを 2 回以上クリックしたときに発生します。

C#
public event System.Windows.Input.MouseButtonEventHandler PreviewMouseDoubleClick;

イベントの種類

次の例は、イベント ハンドラーにイベントをアタッチする方法を PreviewMouseDoubleClick 示しています。

XAML
<Button Name="btn1" Foreground="Black" 
        PreviewMouseDoubleClick="ChangeForeground">
  Foreground
</Button>

次の例は、 イベントのイベント ハンドラーを PreviewMouseDoubleClick 示しています。

C#
void ChangeForeground(object sender, RoutedEventArgs e)
{
    if (btn1.Foreground == Brushes.Green)
    {
        btn1.Foreground = Brushes.Black;
        btn1.Content = "Foreground";
    }
    else
    {
        btn1.Foreground = Brushes.Green;
        btn1.Content = "Control foreground(text) changes from black to green.";
    }
}

注釈

このルーティング イベントは、要素ツリーを介したトンネリング ルートに従っているようですが、実際には、各 UIElementによって要素ツリーに沿って発生する直接ルーティング イベントです。 イベント ハンドラーで PreviewMouseDoubleClick プロパティを Handledtrue設定すると、ルートに沿った後続PreviewMouseDoubleClickのイベントが に設定された状態でHandled発生しますがMouseDoubleClick、イベントは にtrue設定falseされた 状態でHandled発生します。 これは、ユーザーがコントロールをダブルクリックしたときに通知を受け取り、アプリケーションでイベントを処理する、コントロール コンシューマー向けの上位レベルのイベントです。

マウスのダブルクリックを処理する作成者を制御するには、 が 2 の場合ClickCountに イベントをPreviewMouseLeftButtonDown使用する必要があります。 これにより、要素ツリー内の別の Handled 要素がイベントを処理する場合に、 の状態が適切に伝達されます。

クラスは Control イベントと MouseDoubleClick イベントをPreviewMouseDoubleClick定義しますが、対応するシングルクリック イベントは定義しません。 ユーザーがコントロールを 1 回クリックしたかどうかを確認するには、イベント (またはその対応するイベントのいずれか) を処理MouseDownし、プロパティ値が 1 かどうかをClickCountチェックします。

ルーティングされたイベント情報

識別子フィールド PreviewMouseDoubleClickEvent
ルーティング戦略 直接
代理人 MouseButtonEventHandler

適用対象

製品 バージョン
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9