UIElement.OnPreviewMouseDown(MouseButtonEventArgs) UIElement.OnPreviewMouseDown(MouseButtonEventArgs) UIElement.OnPreviewMouseDown(MouseButtonEventArgs) UIElement.OnPreviewMouseDown(MouseButtonEventArgs) Method

定義

未処理の PreviewMouseDown 添付ルーティング イベントが、そのルート上で、このクラスから派生した要素に到達すると呼び出されます。 このイベントに対するクラス処理を追加するには、このメソッドを実装します。

protected:
 virtual void OnPreviewMouseDown(System::Windows::Input::MouseButtonEventArgs ^ e);
protected virtual void OnPreviewMouseDown (System.Windows.Input.MouseButtonEventArgs e);
abstract member OnPreviewMouseDown : System.Windows.Input.MouseButtonEventArgs -> unit
override this.OnPreviewMouseDown : System.Windows.Input.MouseButtonEventArgs -> unit
Protected Overridable Sub OnPreviewMouseDown (e As MouseButtonEventArgs)

パラメーター

e
MouseButtonEventArgs MouseButtonEventArgs MouseButtonEventArgs MouseButtonEventArgs

イベント データを格納している MouseButtonEventArgs。 このイベント データは、1 つ以上のマウス ボタンが押されたことを報告します。

注釈

マウス ボタンの動作は、専用の入力マネージャーによって処理もされます。 一般的なマウス ボタンの操作として公開される前に、入力などのマウス ボタンの動作に依存しており、コマンドのバインド、その他のプログラミング機能は、アクションのハンドラーを呼び出す可能性があります。 これらの入力システム機能のマークがある場合、Mouse.PreviewMouseDownイベントを処理するには、OnPreviewMouseDownは呼び出されません。

このクラス ハンドラーを使用して、イベントを処理済みとしてマークする場合、次のイベントに影響する可能性があります:PreviewMouseLeftButtonDownPreviewMouseRightButtonDownします。 これらのイベントのいずれかは、受信側の要素で発生する可能性がありますとMouse.PreviewMouseDownを受信します。

このイベントを処理するクラスで処理済みとしてマークする、サブイベントがも発生します。ただし、これらはイベント データの処理済みの状態を渡します。 明示的に使用する場合を除き、サブイベントのインスタンス ハンドラーが呼び出されませんクラス処理でイベントを処理すると場合、AddHandler(RoutedEvent, Delegate, Boolean)handledEventsToo``trueハンドラーをアタッチするためにします。 クラス ハンドラーも呼び出されませんにこれらのクラス ハンドラーが登録されていない限り、RegisterClassHandler(Type, RoutedEvent, Delegate, Boolean)を使用して署名handledEventsToo``trueします。 処理することによってOnPreviewMouseDown処理の速度のすべての可能なマウス ボタンをクラス処理を記述することを示すは。 この動作が望ましくない可能性があります。そのため、この仮想メソッドを使用してイベントを処理済みとしてマークする場合は、注意を使用します。

各ボタンに固有の直接イベントもに、仮想 * メソッドかどうか、これらのボタンに固有のクラス ハンドラーをオーバーライドするとより適切な可能性がありますを検討してください。

このメソッドには、既定の実装がありません。 継承の中間クラスには、このメソッドを実装があります、ために、実装の基本実装を呼び出すことをお勧めします。

このメソッドの目的は、のような共通言語ランタイム (CLR)イベント パターンで * メソッド: このメソッドは、インスタンス ハンドラーではなく、クラス ハンドラーを確立することにより、派生クラスから一致するイベントを処理する手段を提供します。 ここで一致するイベントは、ルーティング イベントです。 On のメソッドの実装パターンは、ルーティング イベント ハンドラーを呼び出すの要素とは限りませんが、子要素によって発生するためのルーティング イベントに異なります。 そのため、実装では、イベント データのソースのプロパティを確認する必要があります。 ほとんどの場合、イベントが再発生する必要がありますください。

このメソッドをオーバーライドすることで、または登録することでクラスのハンドラーをRegisterClassHandler、派生クラスのUIElementイベント ルート上のイベントが受信したときに、プライベート クラス ハンドラー メソッドを呼び出すことができます。 クラス処理が適切なシナリオの 1 つは、イベント データを操作し、ルーティング イベントを処理済みとしてマークすることです。 プレビュー イベントを具体的には、もう 1 つのシナリオでは、対応するバブル クラス ハンドラーが呼び出されないように処理済みとしてマークします。

適用対象

こちらもご覧ください