获取在C#

时间:2018-10-22 14:36:51

标签: c# events observablecollection inotifycollectionchanged

我已经订阅了CollectionChanged的{​​{1}}事件,如下所示:

ObservableCollection<string> m_myCollection

如何在方法中获取集合的名称?

1 个答案:

答案 0 :(得分:1)

ObservableCollection实例没有“名称”。并且任何数量的变量都可以保留对集合的引用。可能没有,可能有十个。没有真正的“自动”方法可以做到这一点。您真正能做的就是将信息传递给您自己,例如,将您认为集合的“名称”传递给处理程序:

 MyCollection = new ObservableCollection<string>();
 MyCollection.CollectionChanged += (s, e) => HandleCollectionChanged("MyCollection", e);
 MyCollection.Add("Item 1");

或者,您可以创建自己的集合类型(可能扩展ObservableCollection),以为其提供在构造函数中设置的Name属性,然后稍后再阅读。