ContentElement.RemoveHandler(RoutedEvent, Delegate) Methode

Definition

Entfernt den angegebenen Routingereignishandler aus diesem Element.

public:
 virtual void RemoveHandler(System::Windows::RoutedEvent ^ routedEvent, Delegate ^ handler);
public void RemoveHandler(System.Windows.RoutedEvent routedEvent, Delegate handler);
abstract member RemoveHandler : System.Windows.RoutedEvent * Delegate -> unit
override this.RemoveHandler : System.Windows.RoutedEvent * Delegate -> unit
Public Sub RemoveHandler (routedEvent As RoutedEvent, handler As Delegate)

Parameter

routedEvent
RoutedEvent

Der Bezeichner des Routingereignisses, für das der Handler angefügt ist.

handler
Delegate

Die spezifische Handlerimplementierung, die aus der Ereignishandlersammlung für dieses Element entfernt werden soll.

Implementiert

Hinweise

Das häufigste Szenario für die Verwendung dieser API ist die Implementierung des CLR-Ereignisses (Common Language Runtime), das einem benutzerdefinierten Routingereignis zugeordnet ist, insbesondere wenn Sie die Logik "entfernen" für Handler auf CLR-Ebene implementieren. Im folgenden Beispiel wird dieses Szenario veranschaulicht.

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

Wenn mehrere Handler angefügt sind, die den Kriterien entsprechen, wird nur der erste Handler im Ereignishandlerspeicher entfernt. Dieses Verhalten entspricht dem CLR-Verhalten des -= Operators.

Weder routedEvent noch handler dürfen null. Beim Versuch, einen der beiden Werte bereitzustellen, null wird eine Ausnahme ausgelöst.

Diese Methode ignoriert die handledEventsToo Parameterinformationen, die bereitgestellt werden, wenn der Handler zuerst mit der AddHandler(RoutedEvent, Delegate, Boolean) Signatur hinzugefügt wurde, die die Behandlung bereits behandelter Ereignisse ermöglicht. Jeder Handlertyp wird entfernt.

Gilt für:

Weitere Informationen