2009-04-28 2 views
0

WPFでのプロパティトリガとデータトリガの利点を理解しようとします。 依存関係プロパティで変更された値によってのみプロパティトリガがトリガされ、依存プロパティで変更された値とINotifyPropertyChangeを実装する.NETオブジェクトで変更された値の両方によってデータトリガがトリガされるようです。だから私の質問は、常にデータトリガーを使用することではないですか?WPFでのデータトリガに対するプロパティトリガの利点

答えて

3

Triggerは、スタイリング/テンプレートのアイテムのプロパティを調べますが、DataTriggerはデフォルトで現在の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

私はそれがより効率的だと非常に疑います。 –

関連する問題