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