0

我正在尝试使用 MS 的 ObservableConcurrentDictionary 示例,但遇到了一个完全出乎意料的问题。

在 System.Collections.Specialized 命名空间中找不到 INotifyCollectionChanged 接口。该项目是 WinForms,我尝试将 .NET 3.5 和 3.5 客户端配置文件作为目标,但无济于事,尽管 MSDN 说它受支持。在包含集合的程序集中找不到任何东西,所以我想我也没有遗漏任何引用。谷歌搜索没有定论,显然我是全世界唯一遇到这样问题的人。

这到底是怎么回事?

这是一个屏幕截图。请注意 System.Collections.Specialized 如何标记为未使用。

VS界面截图。 请注意 System.Collections.Specialized 如何标记为未使用。

4

1 回答 1

2

在 .NET 3.5 中,INotifyCollectionChanged 被编译为WindowsBase.dll的一部分。只有在 .NET 4.0 中,它才被移到核心System.dll中。您必须添加对 WindowsBase 的引用才能访问它。

但是,我不知道 INotifyPropertyChanged/INotifyCollectionChanged 与 WinForms 相关 - 它们是 WPF MVVM 绑定体验的核心部分。您确定它们是您要使用的工具吗?

于 2015-12-10T06:57:59.287 回答