Control.OnPointerEntered(PointerRoutedEventArgs) Метод

Определение

Вызывается перед событием PointerEntered .

protected:
 virtual void OnPointerEntered(PointerRoutedEventArgs ^ e) = OnPointerEntered;
void OnPointerEntered(PointerRoutedEventArgs const& e);
protected virtual void OnPointerEntered(PointerRoutedEventArgs e);
function onPointerEntered(e)
Protected Overridable Sub OnPointerEntered (e As PointerRoutedEventArgs)

Параметры

e
PointerRoutedEventArgs

Данные для события.

Комментарии

Работа в Windows 8

В Windows 8, как правило, событие PointerEntered не срабатывает, если экранный курсор (или перо или точка касания) фактически не перемещается. Например, функция PointerEntered не срабатывает, если мышь и ее экранный курсор остаются неподвижными, а объект с обработчиком PointerEntered преобразует свое положение или иным образом настраивается для перемещения под экранным курсором. Кроме того, параметр PointerEntered не срабатывает, если такой элемент, как всплывающее окно или всплывающее меню, исчезает, а указатель теперь находится на новом элементе (но указатель еще не перемещен). С этим связано поведение PointerExited . Например, если всплывающее окно закрывается программным способом, оно не будет запускать PointerExited , если указатель не переместился в качестве причины его закрытия. Вы по-прежнему будете получать событие PointerEntered , если указатель перемещается над вновь обнаруженным элементом, но это определяет пользователь, произойдет ли это во время перемещения, а не в момент закрытия. Короче говоря, попытка использовать последний элемент, который сработал PointerEntered для определения состояния указателя в пользовательском интерфейсе приложения, не является исчерпывающим в Windows 8, и существует множество сценариев, в которых PointerEntered и PointerExited не будут сопряжены. Это влияет на визуальные состояния для элементов управления, которые также используют pointerEntered и PointerExited в качестве триггеров.

Начиная с Windows 8.1, Функция PointerExited активируется в любом случае, когда указатель одновременно активировал событие PointerEntered, но некоторые изменения состояния пользовательского интерфейса происходят, когда указатель больше не находится в этом элементе. Сюда относятся случаи, когда исчезает весь элемент. И если указатель теперь находится на другом элементе, так как предыдущий элемент исчез, этот элемент запускает PointerEntered, даже если указатель никогда не перемещается. Элементы, которые программно устанавливают для их Visibilityзначение Collapsed, — это один из способов исчезновения элементов из пользовательского интерфейса, а Windows 8.1 поведение учитывает это и активирует PointerExited для элемента **Collapsed ** и PointerEntered для вновь появившегося элемента.

При переносе кода приложения из Windows 8 в Windows 8.1 может потребоваться учесть это изменение поведения, так как это приводит к срабатыванию PointerExited и PointerEntered в тех случаях, когда они не запускались ранее.

Приложения, которые скомпилированы для Windows 8, но выполняются в Windows 8.1, продолжают использовать правила, действующие в Windows 8.

Применяется к

См. также раздел