IXamlDirect.RemoveEventHandler(Object, XamlEventIndex, Object) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
从此 IXamlDirect 中删除指定的事件处理程序。
本文档适用于 Windows 应用 SDK 中 WinUI 的 WinUI 2 for UWP (,请参阅Windows 应用 SDK命名空间) 。
public:
void RemoveEventHandler(Platform::Object ^ xamlDirectObject, XamlEventIndex eventIndex, Platform::Object ^ handler);
void RemoveEventHandler(IInspectable const& xamlDirectObject, XamlEventIndex const& eventIndex, IInspectable const& handler);
public void RemoveEventHandler(object xamlDirectObject, XamlEventIndex eventIndex, object handler);
Public Sub RemoveEventHandler (xamlDirectObject As Object, eventIndex As XamlEventIndex, handler As Object)
参数
- xamlDirectObject
-
Object
Platform::Object
IInspectable
对当前 IXamlDirect 的引用。
- eventIndex
- XamlEventIndex
要删除通过 XamlEventIndex 枚举指定的句柄的事件的标识符。
- handler
-
Object
Platform::Object
IInspectable
对指定处理程序实现的引用。
示例
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);
xd.RemoveEventHandler(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);
xd->RemoveEventHandler(toggleSwitch, XamlEventIndex::UIElement_PointerEntered, toggleSwitchPointerHandler);
注解
通常, 由 IXamlDirect.AddEventHandler (System.Object、Microsoft.UI.Xaml.Core.Direct.XamlEventIndex、System.Object、System.Boolean) 添加指定的处理程序。
RemoveEventHandler 只能用于删除 XamlEventIndex 枚举支持的事件的事件处理程序。
如果没有使用与方法调用的输入参数匹配的条件注册的处理程序,则调用此方法无效。
此方法忽略 IXamlDirect.AddEventHandler (System.Object、Microsoft.UI.Xaml.Core.Direct.XamlEventIndex、System.Object、System.Boolean) 调用中 handledEventsToo 参数是否为 true。
适用于
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将推出:在整个 2024 年,我们将逐步取消以“GitHub 问题”作为内容的反馈机制,并将其替换为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈