Share via

UIElement.DragLeave Event


Occurs when the input system reports an underlying drag event with this element as the origin.

 virtual event DragEventHandler ^ DragLeave;
// Register
event_token DragLeave(DragEventHandler const& handler) const;

// Revoke with event_token
void DragLeave(event_token const* cookie) const;

// Revoke with event_revoker
UIElement::DragLeave_revoker DragLeave(auto_revoke_t, DragEventHandler const& handler) const;
public event DragEventHandler DragLeave;
function onDragLeave(eventArgs) { /* Your code */ }
uIElement.addEventListener("dragleave", onDragLeave);
uIElement.removeEventListener("dragleave", onDragLeave);
- or -
uIElement.ondragleave = onDragLeave;
Public Custom Event DragLeave As DragEventHandler 
<uiElement DragLeave="eventhandler"/>

Event Type


For DragLeave to occur, the value of AllowDrop on the current UIElement and on the event source must be true. Otherwise, consider using PointerExited.

You can initiate a drag-drop action on any UIElement by calling the StartDragAsync method. Once the action is initiated, any UIElement in the app can potentially be a drop target so long as AllowDrop is true on that element. Any elements that the drag-drop action passes over can handle DragEnter, DragLeave or DragOver.

DragLeave is a routed event. For more info on the routed event concept, see Events and routed events overview.

For touch actions, drag-drop actions, and also for interaction-specific or manipulation events that are consequences of a touch action, an element must be hit-test visible in order to be the event source and fire the event that is associated with the action. UIElement.Visibility must be Visible. Other properties of derived types also affect hit-test visibility, for example IsEnabled. For more info, see Events and routed events overview.

DragLeave supports the ability to attach event handlers to the route that will be invoked even if the event data for the event is marked Handled. See AddHandler.

Specific Windows Runtime controls may have class-based handling for the DragLeave event. If so, the control probably has an override for the method OnDragLeave. Typically the event is marked handled by the class handler, and the DragLeave event is not raised for handling by any user code handlers on that control. For more info, see Events and routed events overview.

Independent of the event occurrence, some controls may use theme animations such as DragItemThemeAnimation to visually indicate a drag behavior to the user.

Applies to

See also