Partager via


UIElement.PointerExited Événement

Définition

Se produit lorsqu’un pointeur quitte la zone de test d’accès de cet élément.

public:
 virtual event PointerEventHandler ^ PointerExited;
// Register
event_token PointerExited(PointerEventHandler const& handler) const;

// Revoke with event_token
void PointerExited(event_token const* cookie) const;

// Revoke with event_revoker
UIElement::PointerExited_revoker PointerExited(auto_revoke_t, PointerEventHandler const& handler) const;
public event PointerEventHandler PointerExited;
function onPointerExited(eventArgs) { /* Your code */ }
uIElement.addEventListener("pointerexited", onPointerExited);
uIElement.removeEventListener("pointerexited", onPointerExited);
- or -
uIElement.onpointerexited = onPointerExited;
Public Custom Event PointerExited As PointerEventHandler 
<uiElement PointerExited="eventhandler"/>

Type d'événement

Remarques

L’événement PointerExited se déclenche en réponse à un pointeur qui se trouvait initialement dans la zone englobante de l’élément en laissant cette zone englobante. Les interactions tactiles, souris et stylet/stylet sont reçues, traitées et gérées en tant qu’entrée de pointeur dans l’application. Chacun de ces appareils et leurs interactions peuvent produire un PointerExited événement. Pour plus d’informations, consultez Gérer l’entrée de pointeur et les autres remarques de cette rubrique.

Utilisez un gestionnaire basé sur PointerEventHandler pour gérer cet événement.

Pour les actions tactiles et pour les événements de manipulation ou spécifiques à l’interaction qui sont des conséquences d’une action tactile, un élément doit être visible au test de positionnement pour pouvoir être la source d’événement et déclencher l’événement associé à l’action. UIElement.Visibility doit être visible. D’autres propriétés de types dérivés affectent également la visibilité des tests d’accès. Pour plus d’informations, consultez Vue d’ensemble des événements et des événements routés.

PointerExited prend en charge la possibilité d’attacher des gestionnaires d’événements à l’itinéraire qui sera appelé même si les données d’événement de l’événement sont marquées Handled. Consultez AddHandler.

Des contrôles Windows Runtime spécifiques peuvent avoir une gestion basée sur les classes pour l’événement d’entréePointerExited. Si c’est le cas, le contrôle a probablement un remplacement pour la méthode OnPointerExited. En règle générale, l’événement n’est pas marqué géré par le gestionnaire de classes, de sorte que l’événement PointerExited peut toujours être géré par votre code utilisateur pour le contrôle dans votre interface utilisateur. Pour plus d’informations sur le fonctionnement de la gestion basée sur les classes des événements, consultez Vue d’ensemble des événements et des événements routés.

Si un autre élément a capturé le pointeur, PointerExited ne se déclenche pas même si le pointeur capturé quitte les limites d’un élément. Pour plus d’informations sur la capture de pointeur, consultez Interactions capturePointer ou souris.

PointerExited pour l’entrée souris et stylet/stylet

Un périphérique d’entrée de souris a un curseur à l’écran qui est visible chaque fois que la souris se déplace, même si aucun bouton de la souris n’est enfoncé à ce moment-là. Un comportement similaire est disponible pour l’entrée d’appareil de stylet, où les périphériques d’entrée peuvent détecter que le stylet pointe juste sur la surface de l’appareil d’entrée (IsInRange) sans y toucher. L’entrée de l’appareil à la souris et au stylet déclenche PointerExited donc des événements dans des cas légèrement différents de ceux des événements tactiles. Pour plus d’informations, voir Interactions avec la souris. Un PointerExited événement se déclenche après le dernier événement PointerMoved pour l’élément.

PointerExited pour l’entrée tactile

Un point tactile n’est détectable que si un doigt touche la surface. Chaque fois qu’une action tactile aboutit à un événement PointerReleased , cet événement est immédiatement suivi d’un PointerExited événement, toutes les données d’événement étant les mêmes informations pour les deux événements (même ID de pointeur, même position, etc.) En d’autres termes, le pointeur est considéré comme entrant l’élément au moment et à la position où l’élément est touché par un point tactile.

Vous pouvez également générer PointerExited un point tactile si ce pointeur reste en contact constant avec la surface à mesure qu’il se déplace, s’est situé au-dessus de l’élément initialement, puis quitte les limites de test d’accès d’un élément. Pour ces types d’actions tactiles, il est également possible que l’action soit traitée comme une manipulation ou comme un mouvement, plutôt que comme un événement de pointeur. Pour plus d’informations, consultez Gérer l’entrée de pointeur.

Comportement des événements routés pour PointerExited

PointerExited est un événement routé. Pour plus d’informations sur le concept d’événement routé, consultez Vue d’ensemble des événements et des événements routés. Vous pouvez définir plusieurs PointerExited événements pour les éléments d’une interface utilisateur XAML, y compris pour les éléments qui se trouvent dans une relation parent-enfant. Dans une composition d’interface utilisateur classique, les éléments enfants se trouvent quelque part dans les limites d’un élément parent, de sorte que l’événement PointerExited se produit d’abord pour l’enfant lorsque le pointeur sort de l’enfant, puis pour le parent lorsque le pointeur quitte complètement ce parent. L’événement PointerExited ne fait généralement pas de bulles sur le parent lorsque l’élément enfant le déclenche, car il serait déroutant pour le système d’entrée d’acheminer l’occurrence de l’événement PointerExited vers le parent également. En règle générale, vous ne voulez pas que PointerExited les événements soient routés de toute façon, vous souhaitez uniquement les traiter à partir de l’expéditeur. Vous pouvez explicitement empêcher le routage des événements en définissant Handled sur true dans votre gestionnaire.

Dans de rares cas, il est possible de voir une bulle d’événement PointerExited pour le parent. Par exemple, si vous avez utilisé un RenderTransform pour décaler un élément enfant en dehors des limites de son parent, l’événement bulle vers le parent lorsque l’élément enfant est quitté et donne les informations sur l’événement comme indiqué par la façon dont l’élément enfant a déclenché l’événement.

États visuels PointerOver pour les contrôles

Les contrôles qui ont des modèles de contrôle peuvent appliquer des états visuels qui sont actifs uniquement lorsqu’un pointeur se trouve au-dessus des limites du contrôle. Vous n’avez pas toujours besoin de gérer PointerEntered ou PointerExited pour obtenir ou modifier ce comportement. Vous devrez peut-être re-modèler le contrôle. Si vous dérivez d’un contrôle existant qui a déjà la gestion des entrées de bas niveau qui appelle des états visuels, vous devez fournir un état visuel nommé « PointerOver » dans le VisualStates « CommonStates », et la logique de contrôle intégrée chargera cet état visuel chaque fois qu’un pointeur se trouve sur le contrôle. Un état visuel pour pointer vers le haut est souvent présent sur les contrôles qui peuvent être appelés ou sélectionnés, comme un Button ou un ListViewItem. Si vous dérivez d’une classe de base comme Control qui n’a pas de gestion des événements d’entrée intégrée qui appelle des états visuels, vous devrez peut-être remplacer OnPointerEntered et OnPointerExited vous-même pour obtenir ce comportement. Permet OnPointerExited d’appeler GoToState pour charger un état autre que l’état « PointerOver », par exemple « Normal ».

S’applique à

Voir aussi