WPF入门系列教程(二) 深入剖析WPF Binding的使用方法
同一个对象(特指System.Windows.DependencyObject的子类)的同一种属性(特指DependencyProperty)只能拥有一个binding。
这一点可以通过设置binding对象的方法名得知:
public static BindingExpressionBase SetBinding(
DependencyObject target,
DependencyProperty dp,
BindingBase binding
)
方法名是SetBinding而不是AddBinding。如果想要验证一下,也可以在listView1_SelectionChanged事件方法中增加断点,可以监视到。
当多次在同一个对象上设置Binding时,其实并不会增加多余的binding,而是将原来的binding替换掉了,这里以textBox_ContactID为例如下图:

另一个相对的概念:同一个Binding可以同时与多个对象的多个属性(或同一对象的多个属性)形成Binding。这一点就不做实践验证了,在MSDN上《Data Binding Overview》中有一段“Binding and BindingExpression”就是讲这个道理的。
也许很多读者已经知道或潜意识里有了这种概念,这里只是做一些强调。