2016-10-10 3 views
1

TextBox가 있고 IValueConverter를 코드 뒤에 TextProperty-Binding에 추가하려고합니다. 다음의 예외가 발생이 스텝 기존 바인딩에 IValueConverter를 추가하는 방법

 var bindingExpression = TextBox.GetBindingExpression(TextBox.TextProperty); 
     if (bindingExpression != null && bindingExpression.ParentBinding.Converter == null) 
     { 
      bindingExpression.ParentBinding.Converter = new MyConverter(); 
     } 

: 가 사용 된 후에 변경할 수없는 바인딩. 속성을 변경하기 위해 이전에 바인딩에 액세스하려면 어떻게해야합니까?

+0

대답을 확인하십시오 – AnjumSKhan

답변

0
  1. 새로 만들기 Binding을 만들고 적용하십시오. 이전 Binding 인스턴스에서 다양한 속성을 얻을 수 있습니다.

    또는,

  2. 사용 Trigger

    조건부 Binding, 하나의 다른 IValueConverter없이 적용 할 수 있습니다.

+0

두 번째 솔루션은 어떻게 작동합니까? 예를 들어 줄 수 있습니까? 새로운 Binding을 만드는 것은 그다지 우아하지 않습니다. –

+0

@ Mi.Sharp 상황에 따라 모든 것이 우아합니다. – AnjumSKhan

관련 문제