UIElement.Drop 活動
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
當輸入系統回報一個底層丟棄事件,並將此元素作為丟棄目標時發生。
public:
virtual event DragEventHandler ^ Drop;
// Register
event_token Drop(DragEventHandler const& handler) const;
// Revoke with event_token
void Drop(event_token const* cookie) const;
// Revoke with event_revoker
UIElement::Drop_revoker Drop(auto_revoke_t, DragEventHandler const& handler) const;
public event DragEventHandler Drop;
function onDrop(eventArgs) { /* Your code */ }
uIElement.addEventListener("drop", onDrop);
uIElement.removeEventListener("drop", onDrop);
- or -
uIElement.ondrop = onDrop;
Public Custom Event Drop As DragEventHandler
<uiElement Drop="eventhandler"/>
事件類型
備註
為了 Drop 發生並呼叫處理器, AllowDrop 在作為投放目標的 UIElement 以及拖放動作來源上的 AllowDrop 值必須為 true。
典型的處理器會從 DragEventArgs 事件資料中檢查資料值。
你可以透過呼叫 StartDragAsync 方法,在任何 UIElement 上啟動拖放動作。 一旦動作啟動,只要 AllowDrop 在true該元素上,應用程式內的任何UIElement元素都可能成為丟棄目標,而拖放動作通過的元素也能處理 DragEnter、DragLeave 或 DragOver。
Drop 是路由事件。 元素必須讓 AllowDrop 成為 true 事件 Drop 來源。 如果事件因為未被處理而被允許冒泡到父元素,那麼如果 AllowDrop 在 true 父元素上,事件也可以在父元素上處理。 路由中非處理物件或丟棄目標的中間元素,不需要 AllowDrop 才能成為 true。 欲了解更多路由事件概念,請參閱 事件與路由事件總覽。
對於觸控動作、拖放動作,以及互動特定或操作事件(觸碰動作的結果),元素必須在測試中可見,才能成為事件來源並觸發與動作相關的事件。 UIElement.Visibility 必須是 可見的。 衍生型別的其他屬性也會影響命中測試的可見性,例如 IsEnabled。 如需詳細資訊,請參閱事件與路由事件概觀。
Drop 支援即使事件資料標記 為已處理,也能將事件處理器附加到將被呼叫的路由上。 請參見 AddHandler。
特定的 Windows 執行階段 控制項可能對事件採取類別式處理Drop。 如果是這樣,控制項的邏輯大概有覆蓋 OnDrop 方法。 通常該事件會被類別處理器標記為已處理,且 Drop 該事件不會被該控制項上的使用者程式碼處理器來處理。 如需詳細資訊,請參閱事件與路由事件概觀。
與事件發生無關,有些控制項可能會使用主題動畫,如 DragItemThemeAnimation ,來視覺化地向使用者指示拖曳行為。