我有一個WPF窗體,我正在與數據綁定。我從INotifyPropertyChanged中獲得了事件,但我想知道如何獲取正在監聽的項目列表,以及如何激活已連接的處理程序。找出誰正在收聽PropertyChangedEventHandler在c#
我該怎麼做?
我有一個WPF窗體,我正在與數據綁定。我從INotifyPropertyChanged中獲得了事件,但我想知道如何獲取正在監聽的項目列表,以及如何激活已連接的處理程序。找出誰正在收聽PropertyChangedEventHandler在c#
我該怎麼做?
你對正在聽的項目有什麼意義?
您是否想知道哪些控件是綁定到您的屬性的數據,或者您是否想要連接到PropertyChanged事件的事件處理程序列表?
後者可以通過調用事件的GetInvocationList來完成。
在您的事件實例上調用GetInvocationList()。 你會得到一個代表數組(如果有的話):Delegate []。對於每個委託你可以檢查Method屬性 - 獲取充當監聽器的方法的MethodInfo;或Target屬性 - 獲取偵聽器方法定義的對象實例
感謝所有答案,我設法將它追蹤到不同屬性上的空引用(相當幸運的發現!)
我不明白你描述的場景。你有樣品代碼嗎?當我讀到它時,你正在傾聽對象上的事件,並且想要在聽衆中發現其他聽衆是誰。 – 2009-01-20 15:14:27