Freigeben über


IXamlDirect.AddEventHandler Methode

Definition

Überlädt

AddEventHandler(Object, XamlEventIndex, Object)

Fügt den angegebenen Ereignishandler für ein angegebenes Ereignis mithilfe von XamlEventIndex hinzu, und fügt den Handler zur Handlerauflistung für das angegebene Objekt hinzu.

Diese Dokumentation gilt für WinUI 2 für UWP (für WinUI im Windows App SDK, siehe Windows App SDK Namespaces).

AddEventHandler(Object, XamlEventIndex, Object, Boolean)

Fügt den angegebenen Ereignishandler für ein angegebenes Ereignis mithilfe von XamlEventIndex hinzu, und fügt den Handler zur Handlerauflistung auf dem aktuellen IXamlDirect hinzu. Geben Sie handledEventsToo als true an, damit der bereitgestellte Handler aufgerufen wird, auch wenn das Ereignis an anderer Stelle behandelt wird.

Diese Dokumentation gilt für WinUI 2 für UWP (für WinUI im Windows App SDK, siehe Windows App SDK Namespaces).

AddEventHandler(Object, XamlEventIndex, Object)

Fügt den angegebenen Ereignishandler für ein angegebenes Ereignis mithilfe von XamlEventIndex hinzu, und fügt den Handler zur Handlerauflistung für das angegebene Objekt hinzu.

Diese Dokumentation gilt für WinUI 2 für UWP (für WinUI im Windows App SDK, siehe Windows App SDK Namespaces).

public:
 void AddEventHandler(Platform::Object ^ xamlDirectObject, XamlEventIndex eventIndex, Platform::Object ^ handler);
/// [Windows.Foundation.Metadata.Overload("AddEventHandler2")]
void AddEventHandler(IInspectable const& xamlDirectObject, XamlEventIndex const& eventIndex, IInspectable const& handler);
[Windows.Foundation.Metadata.Overload("AddEventHandler2")]
public void AddEventHandler(object xamlDirectObject, XamlEventIndex eventIndex, object handler);
Public Sub AddEventHandler (xamlDirectObject As Object, eventIndex As XamlEventIndex, handler As Object)

Parameter

xamlDirectObject
Object

Platform::Object

IInspectable

Ein Verweis auf das Objekt, das den Ereignishandler empfängt.

eventIndex
XamlEventIndex

Ein Bezeichner für das Ereignis, das über die XamlEventIndex-Enumeration behandelt werden soll.

handler
Object

Platform::Object

IInspectable

Ein Verweis auf die angegebene Handlerimplementierung.

Attribute

Beispiele

Das folgende Beispiel zeigt, wie Sie das PointerEntered-Ereignis über eine bestimmte Instanz von PointerEventHandler auf einem ToggleSwitch-Steuerelement aus seiner IXamlDirect-Instanz hinzufügen/ändern.

XamlDirect xd = XamlDirect.GetDefault();

IXamlDirect 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);
XamlDirect^ xd = XamlDirect::GetDefault();

IXamlDirect^ 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);

Hinweise

AddEventHandler kann nur zum Hinzufügen von Ereignishandlern für die ereignisse verwendet werden, die von der XamlEventIndex-Enumeration unterstützt werden. Mit dieser Methode können Sie Handler hinzufügen, um routingfähige und nicht weitergeleitete Ereignisse hinzuzufügen, die vom XAML-Objekt unterstützt werden.

Weitere Informationen

Gilt für:

AddEventHandler(Object, XamlEventIndex, Object, Boolean)

Fügt den angegebenen Ereignishandler für ein angegebenes Ereignis mithilfe von XamlEventIndex hinzu, und fügt den Handler zur Handlerauflistung auf dem aktuellen IXamlDirect hinzu. Geben Sie handledEventsToo als true an, damit der bereitgestellte Handler aufgerufen wird, auch wenn das Ereignis an anderer Stelle behandelt wird.

Diese Dokumentation gilt für WinUI 2 für UWP (für WinUI im Windows App SDK, siehe Windows App SDK Namespaces).

public:
 void AddEventHandler(Platform::Object ^ xamlDirectObject, XamlEventIndex eventIndex, Platform::Object ^ handler, bool handledEventsToo);
/// [Windows.Foundation.Metadata.Overload("AddEventHandler1")]
void AddEventHandler(IInspectable const& xamlDirectObject, XamlEventIndex const& eventIndex, IInspectable const& handler, bool const& handledEventsToo);
[Windows.Foundation.Metadata.Overload("AddEventHandler1")]
public void AddEventHandler(object xamlDirectObject, XamlEventIndex eventIndex, object handler, bool handledEventsToo);
Public Sub AddEventHandler (xamlDirectObject As Object, eventIndex As XamlEventIndex, handler As Object, handledEventsToo As Boolean)

Parameter

xamlDirectObject
Object

Platform::Object

IInspectable

Ein Verweis auf den aktuellen IXamlDirect.

eventIndex
XamlEventIndex

Ein Bezeichner für das Ereignis, das über die XamlEventIndex-Enumeration behandelt werden soll.

handler
Object

Platform::Object

IInspectable

Ein Verweis auf die angegebene Handlerimplementierung.

handledEventsToo
Boolean

bool

true , um den Handler so zu registrieren, dass er aufgerufen wird, auch wenn das Routingereignis in seinen Ereignisdaten behandelt wird.

false , um den Handler mit der Standardbedingung zu registrieren, dass er nicht aufgerufen wird, wenn das Routingereignis bereits behandelt wird.

Der Standardwert ist "false", und der Parameter ist optional.

Attribute

Beispiele

XamlDirect xd = XamlDirect.GetDefault();

IXamlDirect 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, true);
XamlDirect^ xd = XamlDirect::GetDefault();

IXamlDirect^ 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, true);

Hinweise

AddEventHandler kann nur zum Hinzufügen von Ereignishandlern für die ereignisse verwendet werden, die von der XamlEventIndex-Enumeration unterstützt werden. Mit dieser Methode können Sie Handler hinzufügen, um routingfähige und nicht weitergeleitete Ereignisse hinzuzufügen, die vom XAML-Objekt unterstützt werden.

Weitere Informationen finden Sie unter UIElement.AddHandler für die Verwendung von handledEventsToo und den Einschränkungen um dasselbe. Bei nicht weitergeleiteten Ereignissen wird das HandleEventsToo-Flag vollständig ignoriert.

Weitere Informationen

Gilt für: