Compartir a través de


IXamlDirect.AddEventHandler Método

Definición

Sobrecargas

AddEventHandler(Object, XamlEventIndex, Object)

Agrega el controlador de eventos especificado para un evento especificado mediante XamlEventIndex, agregando el controlador a la colección de controladores en el objeto especificado.

Esta documentación se aplica a WinUI 2 para UWP (para WinUI en el SDK de Aplicaciones para Windows, consulta los espacios de nombres SDK de Aplicaciones para Windows).

AddEventHandler(Object, XamlEventIndex, Object, Boolean)

Agrega el controlador de eventos especificado para un evento especificado mediante XamlEventIndex, agregando el controlador a la colección de controladores en el IXamlDirect actual. Especifique handledEventsToo como true para que se invoque el controlador proporcionado aunque el evento se controle en otro lugar.

Esta documentación se aplica a WinUI 2 para UWP (para WinUI en el SDK de Aplicaciones para Windows, consulta los espacios de nombres SDK de Aplicaciones para Windows).

AddEventHandler(Object, XamlEventIndex, Object)

Agrega el controlador de eventos especificado para un evento especificado mediante XamlEventIndex, agregando el controlador a la colección de controladores en el objeto especificado.

Esta documentación se aplica a WinUI 2 para UWP (para WinUI en el SDK de Aplicaciones para Windows, consulta los espacios de nombres SDK de Aplicaciones para Windows).

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)

Parámetros

xamlDirectObject
Object

Platform::Object

IInspectable

Referencia al objeto que recibe el controlador de eventos.

eventIndex
XamlEventIndex

Identificador del evento que se va a controlar mediante la enumeración XamlEventIndex .

handler
Object

Platform::Object

IInspectable

Referencia a la implementación del controlador especificada.

Atributos

Ejemplos

En el ejemplo siguiente se muestra cómo agregar o modificar el evento PointerEntered a través de una instancia específica de PointerEventHandler en un control ToggleSwitch desde su instancia de IXamlDirect .

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

Comentarios

AddEventHandler solo se puede usar para agregar controladores de eventos para los eventos admitidos por la enumeración XamlEventIndex . Puedes usar este método para agregar controladores a eventos enrutados y no enrutados compatibles con el objeto xaml.

Consulte también

Se aplica a

AddEventHandler(Object, XamlEventIndex, Object, Boolean)

Agrega el controlador de eventos especificado para un evento especificado mediante XamlEventIndex, agregando el controlador a la colección de controladores en el IXamlDirect actual. Especifique handledEventsToo como true para que se invoque el controlador proporcionado aunque el evento se controle en otro lugar.

Esta documentación se aplica a WinUI 2 para UWP (para WinUI en el SDK de Aplicaciones para Windows, consulta los espacios de nombres SDK de Aplicaciones para Windows).

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)

Parámetros

xamlDirectObject
Object

Platform::Object

IInspectable

Referencia al IXamlDirect actual.

eventIndex
XamlEventIndex

Identificador del evento que se va a controlar mediante la enumeración XamlEventIndex .

handler
Object

Platform::Object

IInspectable

Referencia a la implementación del controlador especificada.

handledEventsToo
Boolean

bool

True para registrar el controlador de forma que se invoque incluso cuando el evento enrutado se marca como controlado en sus datos de evento.

false para registrar el controlador con la condición predeterminada que no se invocará si el evento enrutado ya está marcado como controlado.

El valor predeterminado es false y el parámetro es opcional.

Atributos

Ejemplos

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

Comentarios

AddEventHandler solo se puede usar para agregar controladores de eventos para los eventos admitidos por la enumeración XamlEventIndex . Puedes usar este método para agregar controladores a eventos enrutados y no enrutados compatibles con el objeto xaml.

Consulte UIElement.AddHandler para obtener información sobre cuándo usar handledEventsToo y las restricciones en torno a la misma. En el caso de los eventos no enrutados, se omite completamente la marca handleEventsToo .

Consulte también

Se aplica a