ContentElement.OnMouseUp(MouseButtonEventArgs) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Invocado quando um evento encaminhado não tratado MouseUp atinge um elemento da sua rota derivado desta classe. Implemente este método para adicionar o tratamento de classes para este evento.
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)
Parâmetros
O MouseButtonEventArgs que contém os dados do evento. Os dados do evento indicam que o botão do rato foi libertado.
Observações
As ações dos botões do rato também são geridas por um gestor de entradas dedicado. Outras funcionalidades de programação que dependem de ações de botões do rato, como atribuições de entrada e comandos, podem invocar manipuladores para a ação antes de esta ser exposta como uma ação geral de botão do rato. Se estas funcionalidades do sistema de entrada marcarem o Mouse.MouseUp evento como tratado, OnMouseUp não é invocado.
Se usar este gestor de classes para marcar o evento como tratado, pode impactar os seguintes eventos: MouseLeftButtonUp e MouseRightButtonUp. Qualquer um destes eventos pode ser levantado sobre o elemento receptor quando Mouse.MouseUp é recebido.
Se assinalares este evento como tratado na gestão de classes, os subeventos continuam a ser levantados; no entanto, passam o estado tratado nos dados do evento. Se o evento for tratado em class handling, os handlers de instância para os subeventos não são invocados a menos que use AddHandler(RoutedEvent, Delegate, Boolean) explicitamente with handledEventsTootrue para anexar handlers. Os manipuladores de classe também não são invocados a menos que esses manipuladores de classe estivessem registados com a RegisterClassHandler(Type, RoutedEvent, Delegate, Boolean) assinatura com handledEventsTootrue. Ao lidar OnMouseUpcom , estás a implicar que a gestão da tua classe teve em conta todas as possíveis ações de botão do rato. Este comportamento pode ser indesejado; Por isso, tenha cautela ao usar este método virtual para marcar eventos como tratados.
Cada um dos eventos diretos específicos de cada botão também tem um método virtual On*; Considere se sobrescrever estes manipuladores de classe específicos de botões seria mais apropriado.
Este método não tem implementação por defeito. Como uma classe intermédia na herança pode implementar este método, recomendamos que chame a implementação base na sua implementação.
O objetivo deste método é semelhante ao padrão de eventos On* em tempo de execução da linguagem comum (CLR): este método fornece os meios para lidar com o evento correspondente de classes derivadas, estabelecendo um gestor de classes em vez de um gestor de instâncias. Neste caso, o evento de correspondência é um evento encaminhado. O padrão de implementação dos métodos On* é diferente para eventos encaminhados porque um evento encaminhado pode ser gerado por um elemento filho, que não é necessariamente o elemento que irá invocar os handlers. Por isso, a sua implementação precisa de examinar as propriedades de origem dos dados do evento. Na maioria dos casos, não deve tentar reabrir o evento.
Quer sobrescrevendo este método, quer registando manipuladores de classe com RegisterClassHandler, classes derivadas de ContentElement podem chamar métodos de gestores privados de classes quando o evento é recebido ao longo da rota do evento. Um cenário em que o tratamento de classes é apropriado é manipular os dados do evento e marcar o evento encaminhado como tratado.