Compartir a través de


XamlDirect.AddEventHandler Método

Definición

Sobrecargas

AddEventHandler(IXamlDirectObject, 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 IXamlDirectObject actual.

AddEventHandler(IXamlDirectObject, 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 objeto IXamlDirectObject actual. Especifique handledEventsToo como true para que se invoque el controlador proporcionado incluso si el evento se controla en otro lugar.

AddEventHandler(IXamlDirectObject, 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 IXamlDirectObject actual.

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

Parámetros

xamlDirectObject
IXamlDirectObject

Referencia al objeto IXamlDirectObject 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.

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

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 admitidos por el objeto xaml.

Consulte también

Se aplica a

AddEventHandler(IXamlDirectObject, 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 objeto IXamlDirectObject actual. Especifique handledEventsToo como true para que se invoque el controlador proporcionado incluso si el evento se controla en otro lugar.

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

Parámetros

xamlDirectObject
IXamlDirectObject

Referencia al objeto IXamlDirectObject 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 eventos. 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

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 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, true);
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, 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 admitidos por 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