2013-12-17 2 views
0

하나의 속성에 OneWayToSource-Binding이 설정된 DepencencyObject가있는 경우 DP 값을 다시 설정하려고하면 바인딩이 제거됩니다. 직접 (일반) 바인딩을 사용하는 '반대'방식을 사용할 수 없으므로 OneWayToSource 바인딩을 사용해야합니다. 내 질문은이 일을 성취 할 수있는 또 다른 방법이 있는지 여부입니다.DepencencyProperty의 값 설정 및 OneWayToSource-Binding 유지

답변

1

이 같은 것을 가지고, 내가 제대로 이해한다면 어디 보자 : 코드 숨김에서,

<SomeControl x:Name="MyControl" MyProp="{Binding Something, Mode="OneWayToSource"}".../> 

다음을, 당신은 다른 값으로 MyProp을 설정하려고

MyControl.MyProp = SomethingElse; 

그리고 지금 MyProp으로 변경하면 바인딩이 제거되므로 Something을 업데이트하지 않습니다. 권리?

이 경우

, 당신은 .NET 4.0 이상에서 작동하는 경우, 당신은 사용할 수 있습니다 SetCurrent :

MyControl.SetCurrent(MyPropProperty, SomethingElse); 
+0

좋아! 나는 결코 이것을 발견하지 못했다. 나는 다른 .NET 버전에 방법이 있는지 궁금해 ... – HerpDerpington

+1

4.0에 추가되었습니다. 그때까지는 크게 그리워했습니다. IIRC, 몇 가지 방법이 있었지만 엉망이었습니다. – XAMeLi