문제

WPF에서는 DataTrigger가 연결된 속성에 바인딩될 수 있습니까?

본질적으로 특정 유효성 검사 규칙이 위반되었을 때 스타일을 제공하기 위해 연결된 속성에 변환기를 사용하고 싶습니다.나는 다음과 같은 마크업을 사용하고 있습니다.

<DataTrigger Binding="{Binding Path=Validation.Errors, 
                       RelativeSource={RelativeSource Self}, 
                       Converter={StaticResource RequiredToBoolConverter}}" 
                       Value="True">
  <Setter Property="Background" Value="LightGreen" />
</DataTrigger>

그러나 이것이 실행되면 다음을 얻습니다.

System.Windows.Data 오류:39 :BindingExpression 경로 오류:'validation'속성 '객체' ''텍스트 상자 '(name =' ')에서 찾을 수 없습니다.BindingExpression:Path=Validation.Errors;DataItem='TextBox'(이름='');대상 요소는 'textbox'(name = '')입니다.대상 속성은 'notarget'입니다 ( 'Object'유형)

DataTrigger 바인딩 경로를 "Text"로 변경하면 데이터 바인딩 오류가 발생하지 않습니다(물론 내가 원하는 동작을 제공하지는 않습니다).

도움이 되었습니까?

해결책

속성을 괄호로 묶어야 합니다.

<DataTrigger Binding="{Binding Path=(Validation.Errors).YourAttachedProperty,...
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top