2009-04-28 2 views
0

WPF에서 데이터 트리거를 통해 속성 트리거의 이점을 이해하려고합니다. 속성 트리거는 종속성 속성에서 변경된 값에 의해서만 트리거 될 수 있으며 데이터 트리거는 종속성 속성에서 변경된 값과 INotifyPropertyChange를 구현하는 .Net 개체에서 변경된 값으로 트리거 될 수 있습니다. 그래서 내 질문은 항상 데이터 트리거를 사용하지 않는 이유는 무엇입니까?WPF에서 데이터 트리거보다 속성 트리거의 장점은 무엇입니까

답변

3

Trigger은 기본적으로 현재 DataContext을보고있는 반면에 스타일링/템플릿 작업중인 항목의 속성을 살펴 봅니다.

예 :

<Style TargetType="ListBoxItem"> 
    <Style.Triggers> 
     <Trigger Property="IsMouseOver" Value="True"> 
      <!-- applied when mouse is over the ListBoxItem --> 
     </Trigger> 
     <DataTrigger Binding="{Binding Name}" Value="Kent"> 
      <!-- applied when the ListBoxItem's data has a Name property set to "Kent" --> 
     </DataTrigger> 
    </Style.Triggers> 
</Style> 
+0

그래서 전용 속성 트리거 장점은이 스타일 아이템 속성의 값의 변화에 ​​의해 트리거하려면 짧은 방법이 있다는입니까? DataTrigger를 사용하여 스타일이 지정된 항목 속성에 바인딩 할 수 있기 때문에 ... – Andy

+0

나는 그것이 더 효율적이라고 생각합니다. –