如果我是dp a和dp b,如果我将b绑定到a,比如a是100,则b变为100,如果稍后将b分配给80会破坏绑定吗?所以如果我以后分配一个t0 70 b将不会更新?也许更好的方法是在值改变的方法中改变b,然后下面的例子可以工作吗?
答案 0 :(得分:4)
如果您希望(暂时,直到a
的下一次更改)将b
的值设置为70而不破坏绑定,您可以在定义DependencyProperty的DependencyObject上调用SetCurrentValue(bProperty, 70)
b
。只要依赖属性由公共静态字段支持,如here所述(对于所有WPF组件的依赖属性,它都是真的),这就可以工作。
答案 1 :(得分:3)
是的,它会破坏绑定,因为您要用静态值替换绑定值。
要在更新B时保持绑定,您需要获取属性B上的绑定并更新它的Source。这意味着您实际上将更新属性A.