有没有一种方法来观看WPF路由事件?
-
13-09-2019 - |
题
我想知道是否有观看了在WPF应用程序中提出的所有RoutedEvents的方式。一种方法写发射控制台的事件的一些信息将是知府,看看发生了什么事情。
解决方案
是的,但它需要一些反射。你使用过类似的已经做了艰苦提升你史努比的工具更好。
在标签的活动你可以看到事件的列表,并处理它的元素。
其他提示
我发现另一种方式:
我已经添加到了我的用户的负载处理程序。
var events = EventManager.GetRoutedEvents();
foreach (var routedEvent in events)
{
EventManager.RegisterClassHandler(typeof(myUserControl),
routedEvent,
new RoutedEventHandler(handler));
}
和是这样的处理方法:
internal static void handler(object sender, RoutedEventArgs e)
{
if (e.RoutedEvent.ToString() != "CommandManager.PreviewCanExecute" &&
e.RoutedEvent.ToString() != "CommandManager.CanExecute")
Console.WriteLine(e.OriginalSource+"=>"+e.RoutedEvent);
}
在 CanExecute 的事件是在我的情况有点过分。如果你想看看这些也只是删除的如果的声明。
不隶属于 StackOverflow