找出谁在c#中监听PropertyChangedEventHandler

时间:2009-01-20 15:11:09

标签: c# wpf data-binding inotifypropertychanged

我有一个WPF表单,我正在使用数据绑定。我得到了从INotifyPropertyChanged引发的事件,但是我想看看如何获​​取正在监听的项目列表,我将启动连接的处理程序。

我该怎么做?

4 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

您对正在倾听的物品有什么意义?

您想知道哪些控件是数据绑定到您的媒体资源,还是您想要一个连接到PropertyChanged事件的事件处理程序列表?

后者可以通过在事件上调用GetInvocationList来完成。

答案 2 :(得分:0)

在您的事件实例上调用GetInvocationList()。 你会得到一组代表(如果有的话):委托[]。对于每个委托,您可以检查Method属性 - 获取充当侦听器的方法的MethodInfo;或Target属性 - 获取对象的实例,定义了侦听器方法

答案 3 :(得分:0)

感谢所有的答案,我设法将其追踪到另一个属性的空引用(非常幸运的发现!)