UIElement.Tapped 事件

定義

發生于未處理的 選互動發生于這個專案的點擊測試區域。

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"/>

事件類型

備註

觸控、滑鼠裝置和手寫筆裝置都會產生 選動作。 如需詳細資訊,請參閱 處理指標輸入

如需如何在應用程式設計中使用選互動的詳細資訊,請參閱觸控互動設計。 一般概念是,元素上的 Tap 互動會叫用您應用程式中元素的主要動作。

點選事件代表手勢, 而 PointerPressed 事件則是較低層級的輸入事件。 點選和 PointerPressed 事件可能會因為單一使用者互動而引發。 如果事件來源有非預設 的 ManipulationMode,也可以引發 ManipulationStarting 。 即使控制項已經在控制項邏輯中處理 PointerPressed ,或正在處理操作,也不會防止引發點選。

點選事件可能是多個指標點的結果。 針對點選等較高層級的手勢事件,您無法立即存取 PointerPoint 詳細資料,例如個別 PointerId 值或個別座標。 您可以存取裝置類型 (PointerDeviceType) ,以及您可以呼叫 GetPosition的座標,這會從多個指標點提供 Tap 的座標平均值。

點選是路由事件。 此外,元素必須具有 IsTapEnabled才能成為 Tapped 事件來源, (true 是預設) 。 即使父元素上的 IsTapEnabled 為 false,如果事件從 IsTapEnabledfalse 的事件來源子項目泡泡到父元素,則它還是可以處理點選父元素。如果 IsTapEnabledfalse。 如需路由事件概念的詳細資訊,請參閱 事件和路由事件概觀

對於觸控動作以及互動特定或操作事件而言,觸控動作的結果也必須是點擊測試,才能成為事件來源。 UIElement.Visibility 必須是 可見的。 衍生型別的其他屬性也會影響點擊測試可見度。 如需詳細資訊,請參閱事件與路由事件概觀

點選支援將事件處理常式附加至將叫用的路由,即使事件的事件資料標示為 Handled 也一樣。 請參閱 AddHandler

特定Windows 執行階段控制項可能也有點選事件的類別型處理。 如果是,控制項可能具有 OnTapped方法的覆寫。 如需事件類別型處理運作方式的詳細資訊,請參閱 事件和路由事件概觀

點選和 保留 互斥。 輸入系統必須等到指標點放開,才能判斷動作是否應為 [點選]、 [按住 ] 或其他手勢,因此您不會在使用者觸碰螢幕的非常立即點選。 如果您真的需要立即的意見反應,建議您改用 PointerPressed

如果使用者互動也會引發 DoubleTapped,則會先引發 Tapped 來代表第一個點選,但第二個點選不會引發額外的點選。 如果您想要點選與 DoubleTapped的不同邏輯,您的 Tapped 處理常式可能需要使用應用程式特定的變數和計時器,以避免在最終解譯為 DoubleTap 動作的互動上執行。

點選滑鼠和手寫筆/手寫筆輸入

輸入系統會處理動作,讓使用者在元素上按一下滑鼠左鍵做為點選動作。 在放開滑鼠左鍵之前,事件不會引發。 不論滑鼠按鍵按住多久,或保留哪一個按鈕,滑鼠輸入預設都不會產生 保留 事件。

對於手寫筆裝置,將手寫筆裝置觸碰到表面並保留在一個位置會產生 保留 動作。

未引發點選事件的控制項

這些控制項不會引發 Tapped 事件:

適用於

另請參閱