IXamlDirect.AddEventHandler Método
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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). |
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
- AddEventHandler(Object, XamlEventIndex, Object, Boolean)
- RemoveEventHandler(Object, XamlEventIndex, Object)
Se aplica a
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
- AddEventHandler(Object, XamlEventIndex, Object)
- RemoveEventHandler(Object, XamlEventIndex, Object)
- UIElement.AddHandler
- UIElement.RemoveHandler