UIElement.RemoveHandler(RoutedEvent, Delegate) UIElement.RemoveHandler(RoutedEvent, Delegate) UIElement.RemoveHandler(RoutedEvent, Delegate) Method

Définition

Supprime le gestionnaire d’événements routés spécifié de cet élément.Removes the specified routed event handler from this 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

Paramètres

routedEvent
RoutedEvent RoutedEvent RoutedEvent

Identificateur de l'événement routé pour lequel le gestionnaire est attaché.The identifier of the routed event for which the handler is attached.

handler
Delegate Delegate Delegate

Implémentation de gestionnaire spécifique à supprimer de la collection de gestionnaires d’événements sur cet élément.The specific handler implementation to remove from the event handler collection on this element.

Implémente

Exemples

L’exemple suivant utilise RemoveHandler dans le cadre d’une définition de wrapper d’événement.The following example uses RemoveHandler as part of an event wrapper definition.

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); }
}
Public Shared ReadOnly TapEvent As RoutedEvent = EventManager.RegisterRoutedEvent("Tap", RoutingStrategy.Bubble, GetType(RoutedEventHandler), GetType(MyButtonSimple))

' Provide CLR accessors for the event
Public Custom Event Tap As RoutedEventHandler
    AddHandler(ByVal value As RoutedEventHandler)
        Me.AddHandler(TapEvent, value)
    End AddHandler

    RemoveHandler(ByVal value As RoutedEventHandler)
        Me.RemoveHandler(TapEvent, value)
    End RemoveHandler

    RaiseEvent(ByVal sender As Object, ByVal e As RoutedEventArgs)
        Me.RaiseEvent(e)
    End RaiseEvent
End Event

Remarques

Le scénario le plus courant pour utiliser cette APIAPI est lorsque vous implémentez le Common Language Runtime (CLR)common language runtime (CLR) « événement wrapper » qui est associé à un événement routé personnalisé, en particulier lorsque vous implémentez la logique de « supprimer » pour les gestionnaires le CLRCLR niveau.The most common scenario for using this APIAPI is when you implement the Common Language Runtime (CLR)common language runtime (CLR) "wrapper" event that is associated with a custom routed event, specifically when you implement the "remove" logic for handlers at the CLRCLR level. L’exemple qui suit cette section illustre ce scénario de notes.The example that follows this remarks section illustrates this scenario.

Appel de cette méthode n’a aucun effet s’il n’y avait aucun gestionnaire inscrit avec les critères qui correspond aux paramètres d’entrée pour l’appel de méthode.Calling this method has no effect if there were no handlers registered with criteria that matches the input parameters for the method call.

Si plusieurs gestionnaires est attaché qui correspond aux critères, uniquement le premier gestionnaire dans le magasin de gestionnaires est supprimé des événements.If more than one handler is attached that matched the criteria, only the first handler in the event handler store is removed. Ce comportement est cohérent avec CLRCLR comportement de la -= opérateur.This behavior is consistent with CLRCLR behavior of the -= operator.

Ni routedEvent ni handler peut être null.Neither routedEvent nor handler may be null. Tentative de valeur null lève une exception.Attempting to provide either value as null will raise an exception.

Cette méthode ignore la handledEventsToo les informations de paramètre, qui sont fournies si le gestionnaire a d’abord été ajoutée avec la AddHandler(RoutedEvent, Delegate, Boolean) signature qui permet une gestion d’événements déjà gérés.This method ignores the handledEventsToo parameter information, which is provided if the handler was first added with the AddHandler(RoutedEvent, Delegate, Boolean) signature that enables handling of already-handled events. Ces deux types de gestionnaire est supprimé.Either type of handler is removed.

S’applique à

Voir aussi