2012-01-10 50 views
-1

如果我是一個dp a和一個dp b,如果我將b綁定到a,比如說a是100,那麼b變成100,如果稍後將b分配給80,那麼會打破綁定?所以如果我稍後分配一個t0 70 b不會得到更新?也許更好的方法是改變b值的改變方法,那麼下面的例子會起作用嗎?這個綁定是否破壞?

回答

4

如果你想(暫時,直到下一次a變化)設定的b 70值不打破結合,你可以調用定義的DependencyProperty b的DependencyObject的SetCurrentValue(bProperty, 70) 。只要依賴屬性由公共靜態字段支持(如所描述的here(這對所有WPF組件的依賴項屬性而言)是正確的),這將起作用。

3

是的,它會破壞綁定,因爲您正在用靜態值替換綁定值。

爲了在更新B時維護綁定,您需要獲取對屬性B的綁定並更新其源。這意味着你實際上將被更新財產A.

+0

所以它就像使用雙向綁定模式。 – mihajlv 2012-01-10 21:24:01