ContentElement.OnMouseUp(MouseButtonEventArgs) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Anropas när en ohanterad MouseUp dirigerad händelse når ett element i dess väg som härleds från den här klassen. Implementera den här metoden för att lägga till klasshantering för den här händelsen.
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)
Parametrar
Som MouseButtonEventArgs innehåller händelsedata. Händelsedata rapporterar att musknappen släpptes.
Kommentarer
Musknappsåtgärder hanteras också av en dedikerad indatahanterare. Andra programmeringsfunktioner som förlitar sig på musknappsåtgärder, till exempel indata- och kommandobindningar, kan anropa hanterare för åtgärden innan den exponeras som en allmän musknappsåtgärd. Om dessa indatasystemfunktioner markerar Mouse.MouseUp händelsen som hanterad OnMouseUp anropas den inte.
Om du använder den här klasshanteraren för att markera händelsen som hanterad kan du påverka följande händelser: MouseLeftButtonUp och MouseRightButtonUp. Någon av dessa händelser kan aktiveras på det mottagande elementet när Mouse.MouseUp tas emot.
Om du markerar den här händelsen som hanterad i klasshantering genereras fortfarande underhändelser. De skickar dock det hanterade tillståndet i händelsedata. Om händelsen hanteras i klasshantering anropas inte instanshanterare för underhändelserna om du inte uttryckligen använder AddHandler(RoutedEvent, Delegate, Boolean) med handledEventsTootrue för att koppla hanterare. Klasshanterare anropas inte heller om inte klasshanterna registrerades med signaturen RegisterClassHandler(Type, RoutedEvent, Delegate, Boolean) med handledEventsTootrue. Genom att hantera OnMouseUpinnebär du att din klasshantering stod för alla möjliga åtgärder med musknappar. Det här beteendet kan vara oönskat. Var därför försiktig när du använder den här virtuella metoden för att markera händelser som hanterade.
Var och en av de knappspecifika direkthändelserna har också en virtuell På*-metod. fundera på om det kan vara lämpligare att åsidosätta dessa knappspecifika klasshanterare.
Den här metoden har ingen standardimplementering. Eftersom en mellanklass i arvet kan implementera den här metoden rekommenderar vi att du anropar basimplementeringen i implementeringen.
Syftet med den här metoden liknar CLR-händelsemönstret (Common Language Runtime) på* metoder: den här metoden ger möjlighet att hantera matchande händelse från härledda klasser genom att upprätta en klasshanterare i stället för en instanshanterare. I det här fallet är matchande händelse en dirigerad händelse. Implementeringsmönstret för Metoderna På* skiljer sig åt för routade händelser eftersom en dirigerad händelse kan genereras av ett underordnat element, vilket inte nödvändigtvis är det element som anropar hanterare. Därför måste implementeringen undersöka källegenskaperna för händelsedata. Den bör inte försöka göra om händelsen i de flesta fall.
Antingen genom att åsidosätta den här metoden eller genom att registrera klasshanterare med RegisterClassHandler, kan härledda klasser av ContentElement anropa privata klasshanterarmetoder när händelsen tas emot längs händelsevägen. Ett scenario där klasshantering är lämpligt är att manipulera händelsedata och markera den dirigerade händelsen som hanterad.