UIElement.OnPreviewDrop(DragEventArgs) メソッド

定義

未処理の PreviewDrop 添付イベントが、そのルート上で、このクラスから派生した要素に到達すると呼び出されます。Invoked when an unhandled PreviewDrop attached event reaches an element in its route that is derived from this class. このイベントに対するクラス処理を追加するには、このメソッドを実装します。Implement this method to add class handling for this event.

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

パラメーター

e
DragEventArgs

イベント データを格納している DragEventArgsThe DragEventArgs that contains the event data.

注釈

このメソッドには既定の実装がありません。This method has no default implementation. 継承の中間クラスはこのメソッドを実装する可能性があるため、実装で基本実装を呼び出すことをお勧めします。Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.

このメソッドの目的は、* メソッドの 共通言語ランタイム (CLR)common language runtime (CLR) イベントパターンに似ています。このメソッドは、インスタンスハンドラーではなくクラスハンドラーを確立することによって、派生クラスから一致するイベントを処理する手段を提供します。The purpose of this method is similar to the 共通言語ランタイム (CLR)common language runtime (CLR) event pattern On* methods: this method provides the means to handle the matching event from derived classes by establishing a class handler instead of an instance handler. この場合、一致イベントはルーティングイベントです。In this case the matching event is a routed event. On * メソッドの実装パターンは、ルーティングイベントによって異なります。これは、ルーティングイベントは子要素によって発生する可能性があるためです。これは、必ずしもハンドラーを呼び出す要素ではありません。The implementation pattern of the On* methods is different for routed events because a routed event can be raised by a child element, which is not necessarily the element that will invoke handlers. そのため、実装では、イベントデータのソースプロパティを調べる必要があります。Therefore, your implementation needs to examine the source properties of the event data. ほとんどの場合、イベントを reraise しないようにしてください。It should not try to reraise the event in most cases.

このメソッドをオーバーライドするか、RegisterClassHandlerにクラスハンドラーを登録することによって、UIElement の派生クラスは、イベントがイベントルートに沿って受信されたときにプライベートクラスハンドラーメソッドを呼び出すことができます。Either by overriding this method or by registering class handlers with RegisterClassHandler, derived classes of UIElement can call private class handler methods when the event is received along the event route. クラス処理が適切なシナリオの1つは、イベントデータを操作し、ルーティングイベントを処理済みとしてマークすることです。One scenario where class handling is appropriate is to manipulate the event data and mark the routed event as handled. プレビューイベント専用のもう1つのシナリオは、対応するバブルクラスハンドラーが呼び出されないように、それらを処理済みとしてマークすることです。Another scenario that is specifically for Preview events is to mark them handled so that the matching bubbling class handlers are not invoked.

適用対象

こちらもご覧ください