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 — событие ввода более низкого уровня. События Tappped и PointerPressed могут быть вызваны в результате взаимодействия с одним пользователем. Если источник событий имеет тип, отличный от стандартного ManipulationMode, можно также вызвать ManipulationStarting . Даже если элемент управления уже обрабатывает pointerPressed в логике элемента управления или обрабатывает манипуляции, это не препятствует возникновению tapped.
Событие Tapped потенциально является результатом нескольких точек указателя. Для событий жестов более высокого уровня, таких как Tapped, у вас больше нет немедленного доступа к сведениям PointerPoint , таким как отдельные значения PointerId или отдельные координаты. У вас есть доступ к типу устройства (PointerDeviceType) и для координат можно вызвать GetPosition, который дает среднее значение координат для касания из нескольких точек указателя.
Tapped — это перенаправленное событие. Кроме того, элемент должен иметь значение True isTapEnabled, чтобы быть источником событий Tapped (значение true — это значение по умолчанию). Можно обрабатывать касания родительских элементов, даже если isTapEnabled имеет значение false в родительском элементе, если событие отправляется в родительский объект из дочернего элемента источника событий, где IsTapEnabled имеет значение false. Дополнительные сведения о концепции перенаправленных событий см. в статье Общие сведения о событиях и перенаправленных событиях.
Для сенсорных действий, а также для событий взаимодействия или манипуляций, которые являются последствиями сенсорного действия, элемент должен быть видимым, чтобы быть источником события. UIElement.Visibility должен быть видимым. Другие свойства производных типов также влияют на видимость проверки попадания. Дополнительные сведения см. в разделе Общие сведения о событиях и перенаправленных событиях.
Tapped поддерживает возможность подключения обработчиков событий к маршруту, который будет вызываться, даже если данные события помечены как Handled. См. раздел AddHandler.
Определенные элементы управления среда выполнения Windows также могут иметь обработку на основе классов для события Tapped. Если это так, элемент управления, вероятно, имеет переопределение для метода OnTapped. Дополнительные сведения о том, как работает обработка событий на основе классов, см. в статье Общие сведения о событиях и перенаправленных событиях.
Tapped и Holding являются взаимоисключающими. Система ввода должна дождаться освобождения точки указателя, чтобы определить, должно ли действие быть касанием, удержанием или каким-либо другим жестом, чтобы вы не получили касание в тот же момент, когда пользователь касается экрана. Если вам действительно нужна мгновенная обратная связь, вы можете использовать PointerPressed .
Если при взаимодействии с пользователем также возникает ошибка DoubleTapped, сначала будет вызвана касание, представляющая первое касание, но при втором касании не будет возникать дополнительный касание. Если вам нужна другая логика для Tapped и DoubleTapped, обработчику Tapped может потребоваться использовать переменные приложения и таймер, чтобы избежать выполнения при взаимодействии, которые в конечном итоге интерпретируются как действие DoubleTap .
Нажатие для ввода с помощью мыши и пера
Система ввода обрабатывает действие, при котором пользователь щелкает левую кнопку мыши при переходе над элементом как действие касания. Событие не срабатывает до тех пор, пока не отпустится левая кнопка мыши. Ввод с помощью мыши не создает события удержания по умолчанию независимо от того, как долго удерживается кнопка мыши или какая кнопка удерживается.
Для устройств с пером при касании устройства ручки к поверхности и при его использовании в одном месте создается действие Удержание .
Элементы управления, которые не вызывают событие Tapped
Эти элементы управления не вызывают событие Tapped :