DragDrop クラス

定義

ドラッグ アンド ドロップ操作を開始するメソッドや、ドラッグ アンド ドロップ関連のイベント ハンドラーを追加および削除するための機能など、ドラッグ アンド ドロップ操作を開始するためのヘルパー メソッドとフィールドを提供します。

public ref class DragDrop abstract sealed
public static class DragDrop
type DragDrop = class
Public Class DragDrop
継承
DragDrop

注釈

ドラッグ アンド ドロップとは、一般的に、マウス (またはその他のポインティング デバイス) を使用して 1 つ以上のオブジェクトを選択し、ユーザー インターフェイス (UI) で目的のドロップ ターゲットの上にこれらのオブジェクトをドラッグしてドロップする方法を指します。 ドラッグ アンド ドロップ操作は、あるオブジェクトまたはアプリケーションから別のオブジェクトまたはアプリケーションにデータを転送するために使用されるコピー (または切り取り) および貼り付け操作に似ています。 ドラッグ アンド ドロップ操作には、通常、ドラッグ されたデータの発生元のドラッグ ソースと、ドロップされたデータを受け取るドロップ ターゲットの 2 つの関係者が含まれます。 ドラッグ アンド ドロップ操作に必要なイベントとメソッドは、 DragDrop クラスで定義されます。 ドラッグ アンド ドロップ イベントは、任意の UIElement または ContentElementにアタッチできる添付イベントです。 ドラッグ ソースとドロップターゲットは、同じアプリケーションまたは異なるアプリケーションの UI 要素である場合があります。 ただし、ドロップ ターゲットは、ドラッグ ソースによって渡されるデータを処理する方法を認識している必要があります。

Note

UIElementクラスとContentElement クラスには、ドラッグ アンド ドロップ イベントのエイリアスが含まれているため、これらのクラスが基底クラスとして継承されるときに、イベントがクラス メンバー リストに表示されます。 これらのクラスのいずれかのドラッグ アンド ドロップ イベントにイベント ハンドラーをアタッチすると、ハンドラーは基になる DragDrop イベントにアタッチされ、イベント データの同じインスタンスを受け取ります。 例については、「 UIElement.Drop」を参照してください。

ドラッグ ソースは、静的な DoDragDrop メソッドを呼び出し、転送されたデータをそのメソッドに渡すことによって、ドラッグ アンド ドロップ操作を開始します。 要素は、通常、ドラッグ ソースである場合に次のイベントを処理します。

通常、要素はドロップ ターゲットである場合に次のイベントを処理します。

詳細と例については、「 ドラッグ アンド ドロップの概要」を参照してください。

フィールド

名前 説明
DragEnterEvent

DragEnter添付イベントを識別します。

DragLeaveEvent

DragLeave添付イベントを識別します。

DragOverEvent

DragOver添付イベントを識別します。

DropEvent

Drop添付イベントを識別します。

GiveFeedbackEvent

GiveFeedback添付イベントを識別します。

PreviewDragEnterEvent

PreviewDragEnter添付イベントを識別します。

PreviewDragLeaveEvent

PreviewDragLeave添付イベントを識別します。

PreviewDragOverEvent

PreviewDragOver添付イベントを識別します。

PreviewDropEvent

PreviewDrop添付イベントを識別します。

PreviewGiveFeedbackEvent

PreviewGiveFeedback添付イベントを識別します。

PreviewQueryContinueDragEvent

PreviewQueryContinueDrag添付イベントを識別します。

QueryContinueDragEvent

QueryContinueDrag添付イベントを識別します。

メソッド

名前 説明
AddDragEnterHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトに DragEnter イベント ハンドラーを追加します。

AddDragLeaveHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトに DragLeave イベント ハンドラーを追加します。

AddDragOverHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトに DragOver イベント ハンドラーを追加します。

AddDropHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトに Drop イベント ハンドラーを追加します。

AddGiveFeedbackHandler(DependencyObject, GiveFeedbackEventHandler)

指定した依存関係オブジェクトに GiveFeedback イベント ハンドラーを追加します。

AddPreviewDragEnterHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトに PreviewDragEnter イベント ハンドラーを追加します。

AddPreviewDragLeaveHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトに PreviewDragLeave イベント ハンドラーを追加します。

AddPreviewDragOverHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトに PreviewDragOver イベント ハンドラーを追加します。

AddPreviewDropHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトに PreviewDrop イベント ハンドラーを追加します。

AddPreviewGiveFeedbackHandler(DependencyObject, GiveFeedbackEventHandler)

指定した依存関係オブジェクトに PreviewGiveFeedback イベント ハンドラーを追加します。

AddPreviewQueryContinueDragHandler(DependencyObject, QueryContinueDragEventHandler)

指定した依存関係オブジェクトに PreviewQueryContinueDrag イベント ハンドラーを追加します。

AddQueryContinueDragHandler(DependencyObject, QueryContinueDragEventHandler)

指定した依存関係オブジェクトに QueryContinueDrag イベント ハンドラーを追加します。

DoDragDrop(DependencyObject, Object, DragDropEffects)

ドラッグ アンド ドロップ操作を開始します。

RemoveDragEnterHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトから DragEnter イベント ハンドラーを削除します。

RemoveDragLeaveHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトから DragLeave イベント ハンドラーを削除します。

RemoveDragOverHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトから DragOver イベント ハンドラーを削除します。

RemoveDropHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトから Drop イベント ハンドラーを削除します。

RemoveGiveFeedbackHandler(DependencyObject, GiveFeedbackEventHandler)

指定した依存関係オブジェクトから GiveFeedback イベント ハンドラーを削除します。

RemovePreviewDragEnterHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトから PreviewDragEnter イベント ハンドラーを削除します。

RemovePreviewDragLeaveHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトから PreviewDragLeave イベント ハンドラーを削除します。

RemovePreviewDragOverHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトから PreviewDragOver イベント ハンドラーを削除します。

RemovePreviewDropHandler(DependencyObject, DragEventHandler)

指定した依存関係オブジェクトから PreviewDrop イベント ハンドラーを削除します。

RemovePreviewGiveFeedbackHandler(DependencyObject, GiveFeedbackEventHandler)

指定した依存関係オブジェクトから PreviewGiveFeedback イベント ハンドラーを削除します。

RemovePreviewQueryContinueDragHandler(DependencyObject, QueryContinueDragEventHandler)

指定した依存関係オブジェクトから PreviewQueryContinueDrag イベント ハンドラーを削除します。

RemoveQueryContinueDragHandler(DependencyObject, QueryContinueDragEventHandler)

指定した依存関係オブジェクトから QueryContinueDrag イベント ハンドラーを削除します。

添付イベント

名前 説明
DragEnter

オブジェクトがドロップ ターゲットとして機能する要素の境界にドラッグされたときに発生します。

DragLeave

ドロップ先として動作している要素の境界からオブジェクトがドラッグされ、ドロップされずに発生します。

DragOver

オブジェクトがドロップ ターゲットとして機能する要素の境界内でドラッグされている間、連続して発生します。

Drop

ドロップ ターゲットとして機能する要素の境界内でオブジェクトがドロップされたときに発生します。

GiveFeedback

ドラッグ アンド ドロップ操作の実行中に継続的に発生し、ドラッグ ソースがユーザーにフィードバックを提供できるようにします。

PreviewDragEnter

オブジェクトがドロップ ターゲットとして機能する要素の境界にドラッグされたときに発生します。

PreviewDragLeave

ドロップ先として動作している要素の境界からオブジェクトがドラッグされ、ドロップされずに発生します。

PreviewDragOver

オブジェクトがドロップ ターゲットとして機能する要素の境界内でドラッグされている間、連続して発生します。

PreviewDrop

ドロップ ターゲットとして機能する要素の境界内でオブジェクトがドロップされたときに発生します。

PreviewGiveFeedback

ドラッグ アンド ドロップ操作の実行中に継続的に発生し、ドラッグ ソースがユーザーにフィードバックを提供できるようにします。

PreviewQueryContinueDrag

ドラッグ アンド ドロップ操作の実行中に継続的に発生し、ドロップ ソースがキー/ボタンの状態に応じてドラッグ アンド ドロップ操作を終了できるようにします。

QueryContinueDrag

ドラッグ アンド ドロップ操作の実行中に継続的に発生し、ドロップ ソースがキー/ボタンの状態に応じてドラッグ アンド ドロップ操作を終了できるようにします。

適用対象

こちらもご覧ください