如何知道UWP中添加了多少个事件?

如何知道UWP中添加了多少个事件?,uwp,Uwp,例如,我有一个名为tiggerBtnSwitch的ToggleSwitch,我添加了如下事件 tiggerBtnSwitch.Toggled += TiggerBtnSwitch_Toggled; 由于某种原因,上述行执行了多次。我想知道,已经添加了多少个事件(RoutedEventHandler)。这样我就可以减去冗余事件,如下所示 tiggerBtnSwitch.Toggled -= TiggerBtnSwitch_Toggled; 目前还没有明确的API来知道一个事件有多少订阅者。但这

例如,我有一个名为tiggerBtnSwitch的ToggleSwitch,我添加了如下事件

tiggerBtnSwitch.Toggled += TiggerBtnSwitch_Toggled;
由于某种原因,上述行执行了多次。我想知道,已经添加了多少个
事件
RoutedEventHandler
)。这样我就可以减去冗余事件,如下所示

tiggerBtnSwitch.Toggled -= TiggerBtnSwitch_Toggled;

目前还没有明确的API来知道一个事件有多少订阅者。但这里有一种方法可以避免重复订阅

在添加事件订阅之前删除订阅。

// before add
tiggerBtnSwitch.Toggled -= TiggerBtnSwitch_Toggled;
// then add
tiggerBtnSwitch.Toggled += TiggerBtnSwitch_Toggled;
我研究了WPF中删除事件订阅的一些方法,但它们不适用于UWP。因此,更好的方法是只添加一次事件侦听器