ContentElement.OnMouseUp(MouseButtonEventArgs) ContentElement.OnMouseUp(MouseButtonEventArgs) ContentElement.OnMouseUp(MouseButtonEventArgs) ContentElement.OnMouseUp(MouseButtonEventArgs) Method

Définition

Méthode appelée quand un événement routé MouseUp non géré atteint un élément de son itinéraire qui est dérivé de cette classe.Invoked when an unhandled MouseUp routed event reaches an element in its route that is derived from this class. Implémentez cette méthode pour ajouter la gestion de classes pour cet événement.Implement this method to add class handling for this event.

protected public:
 virtual void OnMouseUp(System::Windows::Input::MouseButtonEventArgs ^ e);
protected internal virtual void OnMouseUp (System.Windows.Input.MouseButtonEventArgs e);
abstract member OnMouseUp : System.Windows.Input.MouseButtonEventArgs -> unit
override this.OnMouseUp : System.Windows.Input.MouseButtonEventArgs -> unit
Protected Friend Overridable Sub OnMouseUp (e As MouseButtonEventArgs)

Paramètres

e
MouseButtonEventArgs MouseButtonEventArgs MouseButtonEventArgs MouseButtonEventArgs

MouseButtonEventArgs qui contient les données d'événement.The MouseButtonEventArgs that contains the event data. Les données d’événement signalent que le bouton de la souris a été relâché.The event data reports that the mouse button was released.

Remarques

Les actions du bouton de la souris sont également gérées par un gestionnaire d’entrée dédié.Mouse button actions are also handled by a dedicated input manager. D’autres fonctionnalités de programmation qui reposent sur des actions de bouton de la souris, telles que des liaisons d’entrée et de commande, peuvent appeler des gestionnaires pour l’action avant qu’elle ne soit exposée comme une action de bouton de souris générale.Other programming features that rely on mouse button actions, such as input and command bindings, might invoke handlers for the action before it is exposed as a general mouse button action. Si ces fonctionnalités de système d’entrée Mouse.MouseUp marquent l’événement OnMouseUp comme géré, n’est pas appelé.If these input system features mark the Mouse.MouseUp event as handled, OnMouseUp is not invoked.

Si vous utilisez ce gestionnaire de classe pour marquer l’événement comme étant géré, vous risquez d’avoir MouseLeftButtonUp un MouseRightButtonUpimpact sur les événements suivants: et.If you use this class handler to mark the event as handled, you potentially impact the following events: MouseLeftButtonUp and MouseRightButtonUp. L’un de ces événements peut être déclenché sur l’élément récepteur Mouse.MouseUp lorsque est reçu.Either of these events might be raised on the receiving element when Mouse.MouseUp is received.

Si vous marquez cet événement comme géré dans la gestion des classes, les sous-événements sont toujours déclenchés; Toutefois, ils passent l’état géré dans les données d’événement.If you mark this event as handled in class handling, subevents are still raised; however, they pass the handled state in the event data. Si l’événement est géré dans la gestion de classe, les gestionnaires d’instance des sous-événements ne sont pas appelés, sauf AddHandler(RoutedEvent, Delegate, Boolean) si handledEventsToo vous utilisez explicitement avec true pour joindre des gestionnaires.If the event is handled in class handling, instance handlers for the subevents are not invoked unless you explicitly use AddHandler(RoutedEvent, Delegate, Boolean) with handledEventsToo true in order to attach handlers. Les gestionnaires de classe ne sont pas non plus appelés, à moins que ces gestionnaires de RegisterClassHandler(Type, RoutedEvent, Delegate, Boolean) classe n' handledEventsToo aient été inscrits avec la signature avec true.Class handlers also are not invoked unless those class handlers were registered with the RegisterClassHandler(Type, RoutedEvent, Delegate, Boolean) signature with handledEventsToo true. En gérant OnMouseUp, vous supposez que la gestion de la classe est prise en compte pour toutes les actions possibles du bouton de la souris.By handling OnMouseUp, you are implying that your class handling accounted for all possible mouse button up actions. Ce comportement peut être indésirable. Par conséquent, soyez prudent lorsque vous utilisez cette méthode virtuelle pour marquer les événements comme gérés.This behavior might be unwanted; Therefore, use caution when you use this virtual method to mark events as handled.

Chacun des événements directs spécifiques au bouton a également une méthode virtuelle on* . Déterminez si la substitution de ces gestionnaires de classe spécifiques aux boutons peut être plus appropriée.Each of the button-specific direct events also has a virtual On* method; consider whether overriding these button-specific class handlers might be more appropriate.

Cette méthode n’a pas d’implémentation par défaut.This method has no default implementation. Étant donné qu’une classe intermédiaire dans l’héritage peut implémenter cette méthode, nous vous recommandons d’appeler l’implémentation de base dans votre implémentation de.Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.

L’objectif de cette méthode est similaire au modèle Common Language Runtime (CLR)common language runtime (CLR) d’événement sur* les méthodes: cette méthode fournit les moyens de gérer l’événement correspondant à partir des classes dérivées en établissant un gestionnaire de classe au lieu d’un gestionnaire d’instance.The purpose of this method is similar to the Common Language Runtime (CLR)common language runtime (CLR) event pattern On* methods: this method provides the means to handle the matching event from derived classes by establishing a class handler instead of an instance handler. Dans ce cas, l’événement correspondant est un événement routé.In this case the matching event is a routed event. Le modèle d’implémentation des méthodes* on est différent pour les événements routés, car un événement routé peut être déclenché par un élément enfant, qui n’est pas nécessairement l’élément qui appellera des gestionnaires.The implementation pattern of the On* methods is different for routed events because a routed event can be raised by a child element, which is not necessarily the element that will invoke handlers. Par conséquent, votre implémentation doit examiner les propriétés sources des données d’événement.Therefore, your implementation needs to examine the source properties of the event data. Dans la plupart des cas, il ne doit pas essayer de déclencher à nouvel événement.It should not try to reraise the event in most cases.

Soit en substituant cette méthode, soit en inscrivant des gestionnaires RegisterClassHandlerde classe avec, ContentElement les classes dérivées de peuvent appeler des méthodes de gestionnaire de classes privées lorsque l’événement est reçu le long de l’itinéraire d’événement.Either by overriding this method or by registering class handlers with RegisterClassHandler, derived classes of ContentElement can call private class handler methods when the event is received along the event route. Un scénario dans lequel la gestion de classe est appropriée consiste à manipuler les données d’événement et à marquer l’événement routé comme géré.One scenario where class handling is appropriate is to manipulate the event data and mark the routed event as handled.

S’applique à