DragEventArgs Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Provides data for drag-and-drop events.
public ref class DragEventArgs sealed : RoutedEventArgs
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DragEventArgs final : RoutedEventArgs
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class DragEventArgs : RoutedEventArgs
Public NotInheritable Class DragEventArgs
Inherits RoutedEventArgs
- Inheritance
- Attributes
Windows requirements
Device family |
Windows 10 (introduced in 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduced in v1.0)
|
Remarks
DragEventArgs is used as event data for these events:
These events are routed events. Changing the value of the Handled property of DragEventArgs from an event handler can influence how a routed event behaves. For more info on the routed event concept, see Events and routed events overview.
The Control class has pre-wired event handlers that Control derived types can override to provide class-based handling for the drag-drop events, and these methods also use DragEventArgs as a parameter. These methods are:
The Windows Runtime implementation of drag-drop concepts permits only certain controls and input actions to initiate a drag-drop action. There is no generalized DoDragDrop method that would permit any UI element to initiate a drag-drop action. The main source of a drag-drop action is when you drag the items of a list such as GridView. For a list item drag-drop action, the Data value in event data can potentially be modified from the control-defined default data about the item. This is done by handling the DragItemsStarting event, and working with the DataPackage object that is obtained from the DragItemsStartingEventArgs.Data property in the event data.
Version history
Windows version | SDK version | Value added |
---|---|---|
1607 | 14393 | AllowedOperations |
Properties
AcceptedOperation |
Gets or sets a value that specifies which operations (none, move, copy, and/or link) can be accepted by the target of the drag event. |
AllowedOperations |
Gets a value that specifies which operations (none, move, copy, and/or link) are allowed by the source of the drag event. |
Data |
Gets or sets a data object (DataPackage) that contains the data associated with the corresponding drag event. This value is not useful in all event cases; specifically, the event must be handled by a valid drop target. |
DataView |
Gets a read-only copy of the Data object. |
DragUIOverride |
Gets the visual representation of the data being dragged. |
Handled |
Gets or sets a value that indicates the present state of the event handling for a routed event as it travels the route. |
Modifiers |
Gets a flag enumeration indicating the current state of the SHIFT, CTRL, and ALT keys, as well as the state of the mouse buttons. |
OriginalSource |
Gets a reference to the object that raised the event. This is often a template part of a control rather than an element that was declared in your app UI. (Inherited from RoutedEventArgs) |
Methods
GetDeferral() |
Supports asynchronous drag-and-drop operations by creating and returning a DragOperationDeferral object. |
GetPosition(UIElement) |
Returns a drop point that is relative to a specified UIElement. |