UIElement.OnPreviewMouseUp(MouseButtonEventArgs) UIElement.OnPreviewMouseUp(MouseButtonEventArgs) UIElement.OnPreviewMouseUp(MouseButtonEventArgs) UIElement.OnPreviewMouseUp(MouseButtonEventArgs) Method

Definición

Se invoca cuando un evento adjunto PreviewMouseUp sin controlar alcanza a un elemento derivado de esta clase en su ruta.Invoked when an unhandled PreviewMouseUp attached event reaches an element in its route that is derived from this class. Implemente este método a fin de agregar el control de clases para este evento.Implement this method to add class handling for this event.

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

Parámetros

e
MouseButtonEventArgs MouseButtonEventArgs MouseButtonEventArgs MouseButtonEventArgs

Objeto MouseButtonEventArgs que contiene los datos del evento.The MouseButtonEventArgs that contains the event data. Los datos de evento informan de que se soltaron uno o varios botones del mouse.The event data reports that one or more mouse buttons were released.

Comentarios

Las acciones del botón del mouse también se controlan mediante un administrador de entrada dedicado.Mouse button actions are also handled by a dedicated input manager. Otras características de programación que dependen de las acciones del botón del mouse, como los enlaces de entrada y de comando, podrían invocar Controladores para la acción antes de que se expongan como una acción general del botón del mouse.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 estas características del sistema de entrada Mouse.PreviewMouseUp marcan el evento OnPreviewMouseUp como controlado, no se invoca.If these input system features mark the Mouse.PreviewMouseUp event as handled, OnPreviewMouseUp is not invoked.

Si utiliza este controlador de clase para marcar el evento como controlado, podría afectar a los siguientes eventos: PreviewMouseLeftButtonUp y PreviewMouseRightButtonUp.If you use this class handler to mark the event as handled, you potentially impact the following events: PreviewMouseLeftButtonUp and PreviewMouseRightButtonUp. Se puede producir cualquiera de estos eventos en el elemento receptor cuando Mouse.PreviewMouseUp se recibe.Either of these events might be raised on the receiving element when Mouse.PreviewMouseUp is received.

Si marca este evento como controlado en el control de clases, todavía se generan subtipos. sin embargo, pasan el estado controlado en los datos de evento.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 el evento se controla en el control de clases, no se invocan los controladores de instancia de los subpars a AddHandler(RoutedEvent, Delegate, Boolean) menos handledEventsToo que se use explícitamente con true para adjuntar controladores.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. Los controladores de clase tampoco se invocan a menos que los controladores de clase se registren con handledEventsToo la RegisterClassHandler(Type, RoutedEvent, Delegate, Boolean) firma con true.Class handlers also are not invoked unless those class handlers were registered with the RegisterClassHandler(Type, RoutedEvent, Delegate, Boolean) signature with handledEventsToo true. Mediante el OnPreviewMouseUpcontrol, es decir, el control de clases tiene en cuenta todas las acciones posibles del botón del mouse.By handling OnPreviewMouseUp, you are implying that your class handling accounted for all possible mouse button up actions. Es posible que este comportamiento no sea el deseado; Por lo tanto, tenga cuidado cuando use este método virtual para marcar los eventos como controlados.This behavior might be unwanted; Therefore, use caution when you use this virtual method to mark events as handled.

Cada uno de los eventos directos específicos del botón también tiene un método virtual on *; considere si la invalidación de estos controladores de clase específicos del botón puede ser más adecuada.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.

Este método no tiene ninguna implementación predeterminada.This method has no default implementation. Dado que una clase intermedia en la herencia podría implementar este método, se recomienda llamar a la implementación base en su implementación.Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.

El propósito de este método es similar al Common Language Runtime (CLR)common language runtime (CLR) patrón de eventos de los métodos *: este método proporciona los medios para controlar el evento de coincidencia de las clases derivadas mediante el establecimiento de un controlador de clase en lugar de un controlador de instancia.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. En este caso, el evento de coincidencia es un evento enrutado.In this case the matching event is a routed event. El patrón de implementación de los métodos on * es diferente para los eventos enrutados porque un elemento secundario puede generar un evento enrutado, que no es necesariamente el elemento que invocará los controladores.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. Por lo tanto, la implementación debe examinar las propiedades de origen de los datos del evento.Therefore, your implementation needs to examine the source properties of the event data. No debe intentar volver a generar el evento en la mayoría de los casos.It should not try to reraise the event in most cases.

Ya sea invalidando este método o registrando controladores de clase con RegisterClassHandler, las clases derivadas de pueden llamar a métodos de controlador de UIElement clase privada cuando se recibe el evento a lo largo de la ruta de evento.Either by overriding this method or by registering class handlers with RegisterClassHandler, derived classes of UIElement can call private class handler methods when the event is received along the event route. Un escenario en el que el control de clases es adecuado es manipular los datos del evento y marcar el evento enrutado como controlado.One scenario where class handling is appropriate is to manipulate the event data and mark the routed event as handled.

Se aplica a

Consulte también: