XamlDirect.AddEventHandler Método
Definición
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í.
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
- AddEventHandler(IXamlDirectObject, XamlEventIndex, Object, Boolean)
- RemoveEventHandler(IXamlDirectObject, XamlEventIndex, Object)
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
- AddEventHandler(IXamlDirectObject, XamlEventIndex, Object)
- RemoveEventHandler(IXamlDirectObject, XamlEventIndex, Object)
- AddHandler(RoutedEvent, Object, Boolean)
- RemoveHandler(RoutedEvent, Object)