DragDrop Class
Provides helper methods and fields for initiating drag-and-drop operations, including a method to begin a drag-and-drop operation, and facilities for adding and removing drag-and-drop related event handlers.
Namespace: System.Windows
Assembly: PresentationCore (in PresentationCore.dll)
The DragDrop type exposes the following members.
| Name | Description | |
|---|---|---|
![]() ![]() | AddDragEnterHandler | Adds a DragEnter event handler to a specified dependency object. |
![]() ![]() | AddDragLeaveHandler | Adds a DragLeave event handler to a specified dependency object. |
![]() ![]() | AddDragOverHandler | Adds a DragOver event handler to a specified dependency object. |
![]() ![]() | AddDropHandler | Adds a Drop event handler to a specified dependency object. |
![]() ![]() | AddGiveFeedbackHandler | Adds a GiveFeedback event handler to a specified dependency object. |
![]() ![]() | AddPreviewDragEnterHandler | Adds a PreviewDragEnter event handler to a specified dependency object. |
![]() ![]() | AddPreviewDragLeaveHandler | Adds a PreviewDragLeave event handler to a specified dependency object. |
![]() ![]() | AddPreviewDragOverHandler | Adds a PreviewDragOver event handler to a specified dependency object. |
![]() ![]() | AddPreviewDropHandler | Adds a PreviewDrop event handler to a specified dependency object. |
![]() ![]() | AddPreviewGiveFeedbackHandler | Adds a PreviewGiveFeedback event handler to a specified dependency object. |
![]() ![]() | AddPreviewQueryContinueDragHandler | Adds a PreviewQueryContinueDrag event handler to a specified dependency object. |
![]() ![]() | AddQueryContinueDragHandler | Adds a QueryContinueDrag event handler to a specified dependency object. |
![]() ![]() | DoDragDrop | Initiates a drag-and-drop operation. |
![]() ![]() | RemoveDragEnterHandler | Removes a DragEnter event handler from a specified dependency object. |
![]() ![]() | RemoveDragLeaveHandler | Removes a DragLeave event handler from a specified dependency object. |
![]() ![]() | RemoveDragOverHandler | Removes a DragOver event handler from a specified dependency object. |
![]() ![]() | RemoveDropHandler | Removes a Drop event handler from a specified dependency object. |
![]() ![]() | RemoveGiveFeedbackHandler | Removes a GiveFeedback event handler from a specified dependency object. |
![]() ![]() | RemovePreviewDragEnterHandler | Removes a PreviewDragEnter event handler from a specified dependency object. |
![]() ![]() | RemovePreviewDragLeaveHandler | Removes a PreviewDragLeave event handler from a specified dependency object. |
![]() ![]() | RemovePreviewDragOverHandler | Removes a PreviewDragOver event handler from a specified dependency object. |
![]() ![]() | RemovePreviewDropHandler | Removes a PreviewDrop event handler from a specified dependency object. |
![]() ![]() | RemovePreviewGiveFeedbackHandler | Removes a PreviewGiveFeedback event handler from a specified dependency object. |
![]() ![]() | RemovePreviewQueryContinueDragHandler | Removes a PreviewQueryContinueDrag event handler from a specified dependency object. |
![]() ![]() | RemoveQueryContinueDragHandler | Removes a QueryContinueDrag event handler from a specified dependency object. |
| Name | Description | |
|---|---|---|
![]() | DragEnter | Occurs when an object is dragged into the bounds of an element that is acting as a drop target. |
![]() | DragLeave | Occurs when an object is dragged out of the bounds of an element that is acting as a drop target without being dropped. |
![]() | DragOver | Occurs continuously while an object is dragged within the bounds of an element that is acting as a drop target. |
![]() | Drop | Occurs when an object is dropped within the bounds of an element that is acting as a drop target. |
![]() | GiveFeedback | Occurs continuously while a drag-and-drop operation is in progress, and enables the drag source to give feedback to the user. |
![]() | PreviewDragEnter | Occurs when an object is dragged into the bounds of an element that is acting as a drop target. |
![]() | PreviewDragLeave | Occurs when an object is dragged out of the bounds of an element that is acting as a drop target without being dropped. |
![]() | PreviewDragOver | Occurs continuously while an object is dragged within the bounds of an element that is acting as a drop target. |
![]() | PreviewDrop | Occurs when an object is dropped within the bounds of an element that is acting as a drop target. |
![]() | PreviewGiveFeedback | Occurs continuously while a drag-and-drop operation is in progress, and enables the drag source to give feedback to the user. |
![]() | PreviewQueryContinueDrag | Occurs continuously while a drag-and-drop operation is in progress, and enables the drop source to end the drag-and-drop operation depending on the key/button states. |
![]() | QueryContinueDrag | Occurs continuously while a drag-and-drop operation is in progress, and enables the drop source to end the drag-and-drop operation depending on the key/button states. |
| Name | Description | |
|---|---|---|
![]() ![]() | DragEnterEvent | Identifies the DragEnter attached event. |
![]() ![]() | DragLeaveEvent | Identifies the DragLeave attached event |
![]() ![]() | DragOverEvent | Identifies the DragOver attached event |
![]() ![]() | DropEvent | Identifies the Drop attached event |
![]() ![]() | GiveFeedbackEvent | Identifies the GiveFeedback attached event |
![]() ![]() | PreviewDragEnterEvent | Identifies the PreviewDragEnter attached event |
![]() ![]() | PreviewDragLeaveEvent | Identifies the PreviewDragLeave attached event |
![]() ![]() | PreviewDragOverEvent | Identifies the PreviewDragOver attached event |
![]() ![]() | PreviewDropEvent | Identifies the PreviewDrop attached event |
![]() ![]() | PreviewGiveFeedbackEvent | Identifies the PreviewGiveFeedback attached event |
![]() ![]() | PreviewQueryContinueDragEvent | Identifies the PreviewQueryContinueDrag attached event |
![]() ![]() | QueryContinueDragEvent | Identifies the QueryContinueDrag attached event |
Drag-and-drop commonly refers to a method of data transfer that involves using a mouse (or some other pointing device) to select one or more objects, dragging these objects over some desired drop target in the user interface (UI), and dropping them. A drag-and-drop operation is analogous to a copy (or cut)-and-paste operation that is used to transfer data from one object or application to another. Drag-and-drop operations typically involve two parties: a drag source from which the dragged data originates and a drop target which receives the dropped data. The events and methods required for drag-and-drop operations are defined in the DragDrop class. The drag-and-drop events are attached events that can be attached to any UIElement or ContentElement. The drag source and drop target may be UI elements in the same application or in different applications. However, the drop target must know how to process the data being passed by the drag source.
Note |
|---|
The UIElement and ContentElement classes contain aliases for the drag-and-drop events so that the events appear in the class members list when these classes are inherited as a base class. When you attach an event handler to a drag-and-drop event on one of these classes, the handler is attached to the underlying DragDrop event and they receive the same instance of event data. For example, see UIElement.Drop. |
The drag source initiates a drag-and-drop operation by calling the static DoDragDrop method and passing the transferred data to it. An element typically handles the following events when it is a drag source:
An element typically handles the following events when it is a drop target:
For more information and examples, see Drag and Drop Overview.
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
