XamlDirect.RemoveEventHandler Méthode

Définition

Supprime le gestionnaire d’événements spécifié de cet IXamlDirectObject. En règle générale, le gestionnaire en question a été ajouté par XamlDirect.AddEventHandler.

public:
 virtual void RemoveEventHandler(IXamlDirectObject ^ xamlDirectObject, XamlEventIndex eventIndex, Platform::Object ^ handler) = RemoveEventHandler;
void RemoveEventHandler(IXamlDirectObject const& xamlDirectObject, XamlEventIndex const& eventIndex, IInspectable const& handler);
public void RemoveEventHandler(IXamlDirectObject xamlDirectObject, XamlEventIndex eventIndex, object handler);
function removeEventHandler(xamlDirectObject, eventIndex, handler)
Public Sub RemoveEventHandler (xamlDirectObject As IXamlDirectObject, eventIndex As XamlEventIndex, handler As Object)

Paramètres

xamlDirectObject
IXamlDirectObject

Référence au IXamlDirectObject actuel.

eventIndex
XamlEventIndex

Identificateur de l’événement pour supprimer le handle pour spécifié via l’énumération XamlEventIndex .

handler
Object

Platform::Object

IInspectable

Référence à l’implémentation de gestionnaire spécifiée.

Exemples

L’exemple suivant montre comment ajouter/modifier et supprimer l’événement PointerEntered via un instance spécifique de PointerEventHandler sur un contrôle ToggleSwitch de son instance IXamlDirectObject.

XamlDirect xd = XamlDirect.GetDefault();

IXamlDirectObject toggleSwitch = xd.CreateInstance(XamlTypeIndex.ToggleSwitch);

PointerEventHandler toggleSwitchPointerHandler = new PointerEventHandler((sender, args) =>
{
    if (sender is ToggleSwitch)
    {
        ((ToggleSwitch)sender).IsOn = !((ToggleSwitch)sender).IsOn;
    }
});

xd.AddEventHandler(toggleSwitch, XamlEventIndex.UIElement_PointerEntered, toggleSwitchPointerHandler);
xd.RemoveEventHandler(toggleSwitch, XamlEventIndex.UIElement_PointerEntered, toggleSwitchPointerHandler);
XamlDirect^ xd = XamlDirect::GetDefault();

IXamlDirectObject^ toggleSwitch = xd->CreateInstance(XamlTypeIndex::ToggleSwitch);

PointerEventHandler^ toggleSwitchPointerHandler = ref new PointerEventHandler([&](Platform::Object^ sender, PointerRoutedEventArgs^ args)
{
    ToggleSwitch^ ts = dynamic_cast<ToggleSwitch^>(sender);
    if (nullptr != ts)
    {
        ts->IsOn = !ts->IsOn;
    }
});

xd->AddEventHandler(toggleSwitch, XamlEventIndex::UIElement_PointerEntered, toggleSwitchPointerHandler);
xd->RemoveEventHandler(toggleSwitch, XamlEventIndex::UIElement_PointerEntered, toggleSwitchPointerHandler);

Remarques

RemoveEventHandler ne peut être utilisé que pour supprimer des gestionnaires d’événements pour les événements pris en charge par l’énumération XamlEventIndex .

L’appel de cette méthode n’a aucun effet s’il n’y avait pas de gestionnaires inscrits avec des critères qui correspondent aux paramètres d’entrée de l’appel de méthode.

Cette méthode ignore si le paramètre handledEventsToo était true dans l’appel XamlDirect.AddEventHandler qui a initialement joint le gestionnaire.

S’applique à

Voir aussi