Share via


Windows フォームにおけるドラッグ アンド ドロップ機能

更新 : 2007 年 11 月

Windows フォームには、ドラッグ アンド ドロップ動作を実装するメソッド、イベント、およびクラスのセットが含まれます。ここでは、Windows フォームにおけるドラッグ アンド ドロップ サポートの概要について説明します。詳細についてはドラッグ アンド ドロップ操作とクリップボードのサポート およびドラッグ アンド ドロップ操作とクリップボードのサポート およびドラッグ アンド ドロップ操作とクリップボードのサポート およびドラッグ アンド ドロップ操作とクリップボードのサポート.

ドラッグ アンド ドロップ操作の実行

ドラッグ アンド ドロップ操作を行うには、Control クラスの DoDragDrop メソッドを使用します。ドラッグ アンド ドロップ操作の実行方法の詳細については、DoDragDrop のトピックを参照してください。ドラッグ アンド ドロップ操作を開始する前に、マウス ポインタをドラッグする必要のある四角形の領域を取得するには、SystemInformation クラスの DragSize プロパティを使用します。

ドラッグ アンド ドロップ操作に関連するイベント

ドラッグ アンド ドロップ操作のイベントには 2 つのカテゴリがあります。つまり、ドラッグ アンド ドロップ操作の現在のターゲットで発生するイベントと、ドラッグ アンド ドロップ操作のソースで発生するイベントです。

現在のターゲットでのイベント

ドラッグ アンド ドロップ操作の現在のターゲットで発生するイベントを次の表に示します。

マウス イベント

説明

DragEnter

このイベントは、オブジェクトがコントロールの境界内にドラッグされると発生します。このイベントのハンドラは、DragEventArgs 型の引数を受け取ります。

DragOver

このイベントは、マウス ポインタがコントロールの境界内にあるときにオブジェクトがドラッグされると発生します。このイベントのハンドラは、DragEventArgs 型の引数を受け取ります。

DragDrop

このイベントは、ドラッグ アンド ドロップ操作が完了したときに発生します。このイベントのハンドラは、DragEventArgs 型の引数を受け取ります。

DragLeave

このイベントは、オブジェクトがコントロールの境界の外へドラッグされると発生します。このイベントのハンドラは、EventArgs 型の引数を受け取ります。

DragEventArgs クラスは、マウス ポインタの位置、マウス ボタンとキーボードの修飾子キーの現在の状態、ドラッグ対象のデータ、およびドラッグ イベントのソースによって許可される操作および操作のターゲットへのドロップの影響を指定する DragDropEffects 値を提供します。

ソースでのイベント

ドラッグ アンド ドロップ操作のソースで発生するイベントを次の表に示します。

マウス イベント

説明

GiveFeedback

このイベントは、ドラッグ操作中に発生します。ドラッグ アンド ドロップ操作が発生していることをユーザーが視覚的に確認できるようにします (マウス ポインタの変更など)。このイベントのハンドラは、GiveFeedbackEventArgs 型の引数を受け取ります。

QueryContinueDrag

このイベントは、ドラッグ アンド ドロップ操作中に発生し、ドラッグ アンド ドロップ操作をキャンセルするかどうかをドラッグ ソースが決定できるようにします。このイベントのハンドラは、QueryContinueDragEventArgs 型の引数を受け取ります。

QueryContinueDragEventArgs クラスは、マウス ボタンとキーボードの修飾子キーの現在の状態、Esc キーが押されたかどうかを指定する値、およびドラッグ アンド ドロップ操作を続行するかどうかを指定するために設定できる DragAction 値を提供します。

参照

その他の技術情報

Windows フォーム アプリケーションにおけるマウス入力