UIElement.Tapped 事件
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
當未處理的 Tap 互動發生在該元件的命中測試區域時。
public:
virtual event TappedEventHandler ^ Tapped;
// Register
event_token Tapped(TappedEventHandler const& handler) const;
// Revoke with event_token
void Tapped(event_token const* cookie) const;
// Revoke with event_revoker
UIElement::Tapped_revoker Tapped(auto_revoke_t, TappedEventHandler const& handler) const;
public event TappedEventHandler Tapped;
function onTapped(eventArgs) { /* Your code */ }
uIElement.addEventListener("tapped", onTapped);
uIElement.removeEventListener("tapped", onTapped);
- or -
uIElement.ontapped = onTapped;
Public Custom Event Tapped As TappedEventHandler
<uiElement Tapped="eventhandler"/>
事件類型
備註
觸控、滑鼠裝置和筆裝置都能產生 點擊 動作。 更多資訊請參見 「Handle指標輸入」。
請參見觸控 互動設計 ,了解如何在應用程式設計中使用 點擊 互動。 大致概念是,對元素的 點擊 互動會喚起該元素在你的應用程式中的主要動作。
事件 Tapped 代表一個手勢,而 PointerPressed 事件則是較低階的輸入事件。
Tapped 事件 PointerPressed 可由單一使用者互動引發。 如果事件來源有非預設 的 ManipulationMode,也可以提高 ManipulationStarting 的設定。 即使控制項已經 PointerPressed 在控制邏輯中處理,或正在處理操作,這也不會阻止 Tapped 被提出。
事件 Tapped 可能是多個指標點的結果。 對於較高層次的手勢事件,例如 Tapped 你不再能立即存取 PointerPoint 的細節,例如個別 PointerId 值或個別座標。 你可以存取裝置類型(PointerDeviceType),對於座標,可以呼叫 GetPosition,這會得到來自多個指標點的 Tap 座標平均值。
Tapped 是路由事件。 此外,元素必須有 IsTapEnabled 為 true 事件 Tapped 來源(true 預設為 )。 即使 IsTapEnabled 在父元素上,false若事件從事件來源子元素冒泡到父元素,且 IsTapEnabled 是 false,仍可處理Tapped父元素。 欲了解更多路由事件概念,請參閱 事件與路由事件總覽。
對於觸控動作,以及互動特定或操作事件(觸碰動作的後果),元素必須在測試中可見,才能成為事件來源。 UIElement.Visibility 必須是 可見的。 衍生型別的其他特性也會影響命中測試的可見性。 如需詳細資訊,請參閱事件與路由事件概觀。
Tapped 支援即使事件資料標記 為已處理,也能將事件處理器附加到將被呼叫的路由上。 請參見 AddHandler。
特定的 Windows 執行階段 控制項也可能對事件有類別處理Tapped。 如果是這樣,控制項大概有覆蓋 OnTap 的方法。 關於基於類別的事件處理方式,請參閱 事件與路由事件總覽。
Tapped 與 Holding 是互斥的。 輸入系統必須等到指標點被放開,才能判斷動作應該是 Tapped, Holding 還是其他手勢,這樣你就不會在使用者剛觸碰螢幕的瞬間就知道 Tapped 。 如果你真的需要即時回饋,或許可以使用 PointerPressed 。
如果使用者互動也提高了 DoubleTapped, Tapped 則會先提升代表第一次點擊,但第二次點擊不會再提升 Tapped。 如果你想要對 versus DoubleTapped有不同的邏輯Tapped,處理器Tapped可能需要使用應用程式專屬變數和計時器,以避免在最終被解讀為 DoubleTap 動作的互動上執行。
點擊滑鼠與觸控筆輸入
輸入系統會處理一個動作,使用者在元素上 Tapped 方點擊滑鼠左鍵作為動作。 事件直到放開滑鼠左鍵才會觸發。 滑鼠輸入預設不會產生 Holding 事件,不管按多久或按哪個按鈕。
對於筆式裝置,將筆式裝置觸碰表面並停留在原地,會產生 「保持 」動作。
不會觸發 Tapped 事件的控制項
這些控制不會提升事件:Tapped