Freigeben über


Drag & Drop-Funktionen in Windows Forms

Windows Forms umfasst eine Reihe von Methoden, Ereignissen und Klassen, die das Drag & Drop-Verhalten implementieren. Dieses Thema enthält eine Übersicht über die Drag & Drop-Unterstützung in Windows Forms. Siehe auch Drag & Drop-Operationen und Unterstützung der Zwischenablage.

Ausführen von Drag & Drop-Vorgängen

Um einen Drag & Drop-Vorgang auszuführen, verwenden Sie die DoDragDrop-Methode der Control-Klasse. Weitere Informationen, wie ein Drag & Drop-Vorgang ausgeführt wird, finden Sie unter DoDragDrop. Um das Rechteck abzurufen, über das der Mauszeiger gezogen werden muss, bevor ein Drag & Drop-Vorgang beginnt, verwenden Sie die DragSize-Eigenschaft der SystemInformation-Klasse.

Es gibt zwei Kategorien von Ereignissen in einem Drag & Drop-Vorgang: Ereignisse, die im aktuellen Ziel des Drag & Drop-Vorgangs auftreten, und Ereignisse, die in der Quelle des Drag & Drop-Vorgangs auftreten.

Ereignisse im aktuellen Ziel

Die folgende Tabelle zeigt die Ereignisse, die im aktuellen Ziel eines Drag & Drop--Vorgangs auftreten.

Mausereignis BESCHREIBUNG
DragEnter Dieses Ereignis tritt auf, wenn ein Objekt in die Begrenzungen des Steuerelements gezogen wird. Der Handler für dieses Ereignis empfängt ein Argument des Typs DragEventArgs.
DragOver Dieses Ereignis tritt auf, wenn ein Objekt gezogen wird, während sich der Mauszeiger innerhalb der Grenzen des Steuerelements befindet. Der Handler für dieses Ereignis empfängt ein Argument des Typs DragEventArgs.
DragDrop Dieses Ereignis tritt auf, wenn ein Drag & Drop-Vorgang abgeschlossen wurde. Der Handler für dieses Ereignis empfängt ein Argument des Typs DragEventArgs.
DragLeave Dieses Ereignis tritt auf, wenn ein Objekt über die Grenzen des Steuerelements nach außen gezogen wird. Der Handler für dieses Ereignis empfängt ein Argument des Typs EventArgs.

Die DragEventArgs-Klasse stellt die Position des Mauszeigers, den aktuellen Zustand der Maustasten und der Zusatztasten der Tastatur, die gezogenen Daten und die DragDropEffects-Werte bereit, die die Vorgänge, die für die Quelle des Ziehereignisses zulässig sind, sowie den Zielablegeeffekt für den Vorgang angeben.

Ereignisse in der Quelle

Die folgende Tabelle zeigt die Ereignisse, die in der Quelle eines Drag & Drop-Vorgangs auftreten.

Mausereignis BESCHREIBUNG
GiveFeedback Dieses Ereignis tritt während eines Ziehvorgangs auf. Es bietet die Möglichkeit, dem Benutzer einen visuellen Hinweis zu geben, dass der Drag & Drop-Vorgang auftritt, z. B. Ändern des Mauszeigers. Der Handler für dieses Ereignis empfängt ein Argument des Typs GiveFeedbackEventArgs.
QueryContinueDrag Dieses Ereignis wird während eines Drag & Drop-Vorgangs ausgelöst. Dadurch kann die Quelle des Ziehvorgangs bestimmen, ob der Drag & Drop-Vorgang abgebrochen werden soll. Der Handler für dieses Ereignis empfängt ein Argument des Typs QueryContinueDragEventArgs.

Die QueryContinueDragEventArgs-Klasse stellt Folgendes bereit: den aktuellen Zustand der Maus und der Zusatztasten der Tastatur, einen Wert, der angibt, ob die ESC-Taste gedrückt wurde, und einen DragAction-Wert, der festgelegt werden kann, um anzugeben, ob der Drag & Drop-Vorgang fortgesetzt werden soll.

Weitere Informationen