【发布时间】:2011-06-18 17:20:51
【问题描述】:
我有一个使用INotifyPropertyChanged 的类,并且有一个绑定到网格的列表。每次该对象更改时,它都会更新网格中的值。但是由于历史原因,我想将该对象添加到集合/列表并绑定到历史网格以显示所有更改。然而,我尝试过的每个列表似乎都订阅了INotifyPropertyChanged,所以我在历史网格中只能获得相同数量的项目。
是否有不订阅INotifyPropertyChanged 的列表/集合?
谢谢
【问题讨论】:
-
很难准确理解您在此处所说的内容。据我所知,列表本身并没有绑定到 INotifyPropertyChanged。能否提供一些示例代码?
-
我不是 100% 确定我是否遵循您想要的,但是如果您想绑定列表的旧版本,那么为什么不在您想要记录历史的时间点克隆它?
-
列表订阅 INotifyPropertyChanged 事件,所以如果一个项目发生变化,它会反映在列表中,不是吗?我不希望这种情况发生在我的情况下。我希望每个更改的列表中都有单独的条目
-
集合对象本身不会订阅 INotifyPropertyChanged 事件。网格是。 Grid 应该反映它所绑定的模型的当前状态。听起来您真正想要的是订阅原始数据模型的自定义“历史”模型。每次原始模型发生变化时,都会导致历史数据模型创建一个新实例。
标签: c# .net .net-3.5 c#-3.0 inotifypropertychanged