实现INotifyPropertyChanged的情况下。
使用ObservableCollection或者List集合。去绑定ItemsControl。此时修改了集合中的某一个对象的属性,其它不变。
请问数据更新机制中,会通知更新整个集合对象?还是只会更新修改的那一个对象?
7 个解决方案
#1
修改了一个对象,它去通知更新整个集合,它傻了吗?微软的天才程序员会采用这么低效的方法吗?用常识判断即可得出的结论。
#2
只会更新一个数据对象,没必要更新全部。
#3
版主你好。这是我在msdn上的相同提问。他的回答是,只有增加和删除的提醒。说的和您有些出入。
https://social.msdn.microsoft.com/Forums/zh-CN/bb854b02-088d-40e7-b098-5a4d113988e4/mvvm?forum=wpfzhchs
#4
您能拿出一些具体的根据吗?比如说基于它实现了哪些接口基于机制下实现的通知。
#5
抠字眼儿是不能理解什么是“一致”的,需要用悟性理解。
#1、#2 楼已经说了,ObservableCollection 负责集合单元的增减,而 INotifyPropertyChanged 才负责单元中的对象的属性改变,这是两个完全不同的(没有直接关系的)功能知识点,根本产生不了纠结。要用心去理解。
#1、#2 楼已经说了,ObservableCollection 负责集合单元的增减,而 INotifyPropertyChanged 才负责单元中的对象的属性改变,这是两个完全不同的(没有直接关系的)功能知识点,根本产生不了纠结。要用心去理解。
#6
所谓“更新整个集合对象?还是只会更新修改的那一个对象”这个问题说法,本身就是因为空洞地用“更新”这个字眼儿而不搞明白机制才产生的混乱问题。 如果你稍微深入一点,就不至于张冠李戴了。
#7
集合里面的对象要实现INotifyPropertyChanged,否则集合对象属性的更新不会反映到界面的。集合是实现INotifyCollectionChanged接口的,集合负责的是集合成员在添加和删除时通知界面进行更新
#1
修改了一个对象,它去通知更新整个集合,它傻了吗?微软的天才程序员会采用这么低效的方法吗?用常识判断即可得出的结论。
#2
只会更新一个数据对象,没必要更新全部。
#3
版主你好。这是我在msdn上的相同提问。他的回答是,只有增加和删除的提醒。说的和您有些出入。
https://social.msdn.microsoft.com/Forums/zh-CN/bb854b02-088d-40e7-b098-5a4d113988e4/mvvm?forum=wpfzhchs
#4
您能拿出一些具体的根据吗?比如说基于它实现了哪些接口基于机制下实现的通知。
#5
抠字眼儿是不能理解什么是“一致”的,需要用悟性理解。
#1、#2 楼已经说了,ObservableCollection 负责集合单元的增减,而 INotifyPropertyChanged 才负责单元中的对象的属性改变,这是两个完全不同的(没有直接关系的)功能知识点,根本产生不了纠结。要用心去理解。
#1、#2 楼已经说了,ObservableCollection 负责集合单元的增减,而 INotifyPropertyChanged 才负责单元中的对象的属性改变,这是两个完全不同的(没有直接关系的)功能知识点,根本产生不了纠结。要用心去理解。
#6
所谓“更新整个集合对象?还是只会更新修改的那一个对象”这个问题说法,本身就是因为空洞地用“更新”这个字眼儿而不搞明白机制才产生的混乱问题。 如果你稍微深入一点,就不至于张冠李戴了。
#7
集合里面的对象要实现INotifyPropertyChanged,否则集合对象属性的更新不会反映到界面的。集合是实现INotifyCollectionChanged接口的,集合负责的是集合成员在添加和删除时通知界面进行更新