绑定如何实际工作?

ImJ*_*mes 12 c# data-binding wpf xaml binding

我已经学习WPF几个月了,我很好奇一件事.绑定如何实际工作?我的意思是,在幕后发生了什么.我不希望这里的任何人会给出详细的解释,但可能是一个很好的资源或链接在哪里阅读这样的东西.我一直在搜索和谷歌搜索,但到目前为止没有很好的点击.

我意识到要完全理解这一点,你可能必须要理解框架的大部分内容,但是一点基本的理解会很棒.

谢谢

ben*_*rce 6

在绑定中需要考虑两个方面,将值放入UI并让UI通知其DataContext中的更改.

基本上你几乎可以将任何东西绑定到任何POCO对象,该对象不需要实现任何特殊的东西.使用普通对象的限制是在基础值更改时不会告知绑定目标.

房地产变化通过以下三种机制之一传播:

依赖属性:当其值发生变化时将通知绑定系统,也可用于动画.

INotifyPropertyChanged:如果绑定是实现INotifyPropertyChanged的对象的属性,绑定系统将查找订阅PropertyChanged事件并更新绑定目标,当引发此事件时,属性名称将作为字符串发送.

*属性*更改事件:绑定将查找的最后一件事是一个名称与源属性相同且在末尾更改的事件,因此Name属性需要有一个名为NameChanged的公共事件,这允许WPF绑定到较旧的.net类,如1.1.