据我所知,INotifyPropertyChanges是在WPF之前“发明的”。有人可以解释一下WPF中的新内容,它允许对对象的属性执行控件的不同类型的绑定属性。
这个也可以在WinForms中使用,但由于某些原因不是很受欢迎? (如果是,那是什么原因)?
感谢。
答案 0 :(得分:5)
在WPF中,您不仅可以绑定实现INotifyPropertyChanged
的对象,还可以绑定公开dependency properties的依赖项对象,它们比常规属性更灵活。
还有新的集合接口:
INotifyCollectionChanged
,允许馆藏在添加,删除或替换项目时发送通知ICollectionView
,定义了如何向UI呈现集合 WPF绑定机制也比Windows窗体绑定灵活得多......在Windows窗体中,你只能说:将对象A的属性X绑定到对象B的属性Y.没有DataContext,所以你不能不要定义相对绑定。您无法使用复杂的属性路径(例如A.X.Items [foo] .Bar)。所有转换都必须在事件处理程序中完成,而不是在可重用的转换器中完成。绑定只能在控件上定义,而在WPF中,任何DependencyObject
都可以使用绑定。等等...