Partilhar via


IXamlDirect.AddEventHandler Método

Definição

Sobrecargas

AddEventHandler(Object, XamlEventIndex, Object)

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

AddEventHandler(Object, XamlEventIndex, Object, Boolean)

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo Windows).

AddEventHandler(Object, XamlEventIndex, Object)

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo 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

Uma referência ao objeto que está recebendo o manipulador de eventos.

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 especificada.

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

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(Object, XamlEventIndex, Object, Boolean)

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

Esta documentação se aplica ao WinUI 2 para UWP (para WinUI no SDK do Aplicativo Windows, consulte os namespaces SDK do Aplicativo 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

Uma referência ao IXamlDirect 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 especificada.

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 é falso e o parâmetro é opcional.

Atributos

Exemplos

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

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