Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

UIElement.RemoveHandler-Methode: (RoutedEvent, Delegate)

 

Veröffentlicht: Oktober 2016

Entfernt den angegebenen Routingereignishandler aus diesem Element.

Namespace:   System.Windows
Assembly:  PresentationCore (in PresentationCore.dll)

public void RemoveHandler(
	RoutedEvent routedEvent,
	Delegate handler
)

Parameter

routedEvent
Type: System.Windows.RoutedEvent

Der Bezeichner des Routingereignisses, dem der Handler angefügt ist.

handler
Type: System.Delegate

Die spezifische Handlerimplementierung, die aus der Ereignishandlerauflistung dieses Elements entfernt werden soll.

Das häufigste Szenario für die Verwendung dieser API ist beim Implementieren der Common Language Runtime (CLR) -Wrapper-Ereignis, das zugeordnete eines benutzerdefinierten Routingereignisses, insbesondere beim Implementieren der Remove-Logik für Handler auf der CLR Ebene. Das folgenden Beispiel Hinweise Abschnitt wird dieses Szenario veranschaulicht.

Das Aufrufen dieser Methode hat keine Auswirkung, wenn kein Handler mit Kriterien, die die Eingabeparameter für den Methodenaufruf entspricht registriert wurden.

Wenn mehrere Handler, die die Kriterien, die nur der erste Handler übereinstimmen angefügt wird, der im Ereignis Handler Speicher entfernt wird. Dieses Verhalten entspricht dem CLR Verhalten der -= Operator.

Weder routedEvent noch handler möglicherweise null. Bei dem Versuch, einen der Werte null löst eine Ausnahme aus.

Diese Methode ignoriert die handledEventsToo Parameterinformationen, die bereitgestellt wird, wenn der Handler wurde hinzugefügt, mit der AddHandler(RoutedEvent, Delegate, Boolean) Signatur, die das Behandeln von bereits behandelten Ereignissen ermöglicht. Entweder der Handler entfernt wird.

Im folgenden Beispiel wird RemoveHandler als Teil der Definition eines Ereignis-Wrapper.

public static readonly RoutedEvent TapEvent = EventManager.RegisterRoutedEvent(
    "Tap", RoutingStrategy.Bubble, typeof(RoutedEventHandler), typeof(MyButtonSimple));

// Provide CLR accessors for the event
public event RoutedEventHandler Tap
{
        add { AddHandler(TapEvent, value); } 
        remove { RemoveHandler(TapEvent, value); }
}

.NET Framework
Verfügbar seit 3.0
Silverlight
Verfügbar seit 3.0
Windows Phone Silverlight
Verfügbar seit 7.0
Zurück zum Anfang
Anzeigen: