2015-01-08 12 views
0

속성이 변경되면 특성 값을 분석하고 텍스트 블록의 텍스트를 설정해야합니다. 다중 데이터 트리거multibindig가 아닌 muti 데이터 트리거의 장점은 무엇입니까?

<TextBlock> 
    <TextBlock.Text> 
     <MultiBinding Converter="{StaticResource MyMultivalueConverter}"> 
      <Binding /> 
      <Binding Path="AnotherProperty"/> 
     </MultiBinding> 
    </TextBlock.Text> 
</TextBlock> 

: 멀티 바인딩

:이있을

<TextBlock HorizontalAlignment="Center" Margin="0,20,0,0" FontSize="28"> 
    <TextBlock.Style> 
     <Style TargetType="TextBlock"> 
      <Style.Triggers> 
       <MultiDataTrigger> 
        <MultiDataTrigger.Conditions> 
         <Condition Binding="{Binding Path=." Value="0" /> 
         <Condition Binding="{Binding Path=AnotherProperty}" Value="True" /> 
        </MultiDataTrigger.Conditions> 
        <Setter Property="Text" Value="Mytext" /> 
       </MultiDataTrigger> 
      </Style.Triggers> 
     </Style> 
    </TextBlock.Style> 
</TextBlock> 

I는 multibinding에서 I 다중 값 변환을 필요로한다는 것이다 참조 주요 차이점. 그러나 다중 데이터 트리거를 사용하면 모든 조합을 설정하여 속성의 값에 따라 표시 할 differents 텍스트를 설정해야하므로 매우 힘든 작업입니다.

그래서 많은 조합을 설정해야하고 멀티 바인딩을 사용하여보다 큰 복잡한 비교를 허용하는 변환기를 만드는 것이 바람직하므로 다중 데이터 트리거의 장점은 무엇입니까? 다중 데이터 각 조합에 대해서만 값을 트리거하십시오.

멀티 바인딩을 사용할 때와 멀티 데이터 트리거를 사용할 때? 멀티 바인딩의 이점과 멀티 데이터 트리거의 이점은 무엇입니까?

감사합니다. MultiDataTrigger의 경우

답변

1

당신이 원하는에 대한 속성 값을 설정하기 위해 당신이 자원을 전송하지 않는 한 당신이 에 MultiBinding (수 없습니다 어떤 자원 등 데이터 바인딩을 사용할 수에 XAML 감사의 속성을 설정 다른 바인딩 및 매개 변수에서 검색하거나 사용자 지정 변환기 작성). 예 : 상관없이 에서 MultiBinding 또는 바인딩 여부, 컨버터를 사용하지함으로써

<Setter Property="Text" Value="{StaticResource YourResource}" /> 

, 당신은 변환 또는 ConvertBack 방법에 중단 점을 삽입하여 데이터를 추적 할 수 있습니다 직접 XAML 가능한 것이 아니다.

두 가지 모두 존재하지 않는 Silverlight에서 관심있는 것이 더 유용 할 우려가 있습니다.

+0

글쎄, 정말이 게시물에 표시된 바와 같이 avconverter에서 리소스를 사용할 수 있습니다 : http://stackoverflow.com/questions/618648/how-can-i-access-resourcedictionary-in-wpf-from-c - 샤프 코드 –