XamlDirect.RemoveEventHandler 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í.
Quita el controlador de eventos especificado de este IXamlDirectObject. Normalmente, xamlDirect.AddEventHandler agregó el controlador en cuestión.
public:
virtual void RemoveEventHandler(IXamlDirectObject ^ xamlDirectObject, XamlEventIndex eventIndex, Platform::Object ^ handler) = RemoveEventHandler;
void RemoveEventHandler(IXamlDirectObject const& xamlDirectObject, XamlEventIndex const& eventIndex, IInspectable const& handler);
public void RemoveEventHandler(IXamlDirectObject xamlDirectObject, XamlEventIndex eventIndex, object handler);
function removeEventHandler(xamlDirectObject, eventIndex, handler)
Public Sub RemoveEventHandler (xamlDirectObject As IXamlDirectObject, eventIndex As XamlEventIndex, handler As Object)
Parámetros
- xamlDirectObject
- IXamlDirectObject
Referencia al objeto IXamlDirectObject actual.
- eventIndex
- XamlEventIndex
Identificador del evento para quitar el identificador de especificado mediante la enumeración XamlEventIndex .
- handler
-
Object
Platform::Object
IInspectable
Referencia a la implementación del controlador especificada.
Ejemplos
En el ejemplo siguiente se muestra cómo agregar o modificar y quitar el evento PointerEntered a través de una instancia específica de PointerEventHandler en un control ToggleSwitch de 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);
xd.RemoveEventHandler(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);
xd->RemoveEventHandler(toggleSwitch, XamlEventIndex::UIElement_PointerEntered, toggleSwitchPointerHandler);
Comentarios
RemoveEventHandler solo se puede usar para quitar controladores de eventos para los eventos admitidos por la enumeración XamlEventIndex .
Llamar a este método no tiene ningún efecto si no había controladores registrados con criterios que coincidan con los parámetros de entrada de la llamada al método.
Este método omite si el parámetro handledEventsToo era true en la llamada XamlDirect.AddEventHandler que adjuntaba originalmente el controlador.