Compartilhar via


XamlDirect.AddEventHandler Método

Definição

Sobrecargas

AddEventHandler(IXamlDirectObject, XamlEventIndex, Object)

Adiciona o manipulador de eventos especificado para um evento especificado usando XamlEventIndex, adicionando o manipulador à coleção de manipuladores no IXamlDirectObject atual.

AddEventHandler(IXamlDirectObject, XamlEventIndex, Object, Boolean)

Adiciona o manipulador de eventos especificado para um evento especificado usando XamlEventIndex, adicionando o manipulador à coleção de manipuladores no IXamlDirectObject atual. Especifique handledEventsToo como true para que o manipulador fornecido seja invocado mesmo se o evento for tratado em outro lugar.

AddEventHandler(IXamlDirectObject, XamlEventIndex, Object)

Adiciona o manipulador de eventos especificado para um evento especificado usando XamlEventIndex, adicionando o manipulador à coleção de manipuladores no IXamlDirectObject atual.

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

Uma referência ao IXamlDirectObject atual.

eventIndex
XamlEventIndex

Um identificador para o evento a ser tratado especificado por meio da enumeração XamlEventIndex .

handler
Object

Platform::Object

IInspectable

Uma referência à implementação do manipulador especificado.

Atributos

Exemplos

O exemplo a seguir mostra como adicionar/modificar o evento PointerEntered por meio de uma instância específica de PointerEventHandler em um controle ToggleSwitch de sua instância 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);

Comentários

AddEventHandler só pode ser usado para adicionar manipuladores de eventos para os eventos compatíveis com a enumeração XamlEventIndex . Você pode usar esse método para adicionar manipuladores a eventos roteados, bem como eventos não roteados compatíveis com o objeto xaml.

Confira também

Aplica-se a

AddEventHandler(IXamlDirectObject, XamlEventIndex, Object, Boolean)

Adiciona o manipulador de eventos especificado para um evento especificado usando XamlEventIndex, adicionando o manipulador à coleção de manipuladores no IXamlDirectObject atual. Especifique handledEventsToo como true para que o manipulador fornecido seja invocado mesmo se o evento for tratado em outro 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

Uma referência ao IXamlDirectObject atual.

eventIndex
XamlEventIndex

Um identificador para o evento a ser tratado especificado por meio da enumeração XamlEventIndex .

handler
Object

Platform::Object

IInspectable

Uma referência à implementação do manipulador especificado.

handledEventsToo
Boolean

bool

true para registrar o manipulador de modo que ele seja invocado mesmo quando o evento roteado é marcado como manipulado em seus dados de evento. false para registrar o manipulador com a condição padrão de que ele não será invocado se o evento roteado já estiver marcado como manipulado.

O padrão é false e o parâmetro é opcional.

Atributos

Exemplos

O exemplo a seguir mostra como adicionar/modificar o evento PointerEntered por meio de uma instância específica de PointerEventHandler em um controle ToggleSwitch de sua instância 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);

Comentários

AddEventHandler só pode ser usado para adicionar manipuladores de eventos para os eventos compatíveis com a enumeração XamlEventIndex . Você pode usar esse método para adicionar manipuladores a eventos roteados, bem como eventos não roteados compatíveis com o objeto xaml.

Consulte UIElement.AddHandler para saber quando usar handledEventsToo e as restrições em torno do mesmo. Para eventos não roteados, o sinalizador handleEventsToo é completamente ignorado.

Confira também

Aplica-se a