次の方法で共有


DataTrigger.Setters プロパティ

定義

データ項目が指定した条件を満たしたときに適用するプロパティ値を表す Setter オブジェクトのコレクションを取得します。

public:
 property System::Windows::SetterBaseCollection ^ Setters { System::Windows::SetterBaseCollection ^ get(); };
public System.Windows.SetterBaseCollection Setters { get; }
member this.Setters : System.Windows.SetterBaseCollection
Public ReadOnly Property Setters As SetterBaseCollection

プロパティ値

SetterBaseCollection

既定値は null です。

次の例は、2 つのDataTriggerオブジェクトで定義されているを示しています。DataTemplate このDataTemplateオブジェクトは、SpecialFeatures プロパティを持つ AuctionItem データ オブジェクト (この例では示されていません) に適用されます。

1 つ目 DataTrigger は、データ オブジェクトの SpecialFeatures 値が Color の場合、アイテムが海軍のタイトルを持つ背景で DodgerBlue 表示されるように指定されます。 データ オブジェクトの SpecialFeatures の値が Highlight の場合、2 番目 DataTrigger のオブジェクトがアクティブになり、項目が星の付いたオレンジ色の境界線で表示されます。

完全なサンプルについては、「 データ バインディング デモ」を参照してください。

<DataTemplate.Triggers>
    <DataTrigger Binding="{Binding Path=SpecialFeatures}">
        <DataTrigger.Value>
            <src:SpecialFeatures>Color</src:SpecialFeatures>
        </DataTrigger.Value>
      <DataTrigger.Setters>
        <Setter Property="BorderBrush" Value="DodgerBlue" TargetName="border" />
        <Setter Property="Foreground" Value="Navy" TargetName="descriptionTitle" />
        <Setter Property="Foreground" Value="Navy" TargetName="currentPriceTitle" />
        <Setter Property="BorderThickness" Value="3" TargetName="border" />
        <Setter Property="Padding" Value="5" TargetName="border" />
      </DataTrigger.Setters>
    </DataTrigger>
    <DataTrigger Binding="{Binding Path=SpecialFeatures}">
        <DataTrigger.Value>
            <src:SpecialFeatures>Highlight</src:SpecialFeatures>
        </DataTrigger.Value>
        <Setter Property="BorderBrush" Value="Orange" TargetName="border" />
        <Setter Property="Foreground" Value="Navy" TargetName="descriptionTitle" />
        <Setter Property="Foreground" Value="Navy" TargetName="currentPriceTitle" />
        <Setter Property="Visibility" Value="Visible" TargetName="star" />
        <Setter Property="BorderThickness" Value="3" TargetName="border" />
        <Setter Property="Padding" Value="5" TargetName="border" />
    </DataTrigger>
</DataTemplate.Triggers>

注釈

XAML プロパティ要素の使用

<object>  
  <object.Setters>  
    ZeroOrMoreSetters  
  </object.Setters>  
</object>  

XAML 値

ZeroOrMoreSetters
0 個以上の Setter オブジェクト。

A DataTrigger を使用すると、アクションを開始したり、データ項目が指定した条件を満たしたときに s を使用 Setterしてプロパティ値を適用したりできます。

同じセッター コレクションに同じプロパティを設定するセッターが複数存在する場合は、最後に宣言されたセッターが使用されます。

オブジェクトのプロパティは SettersDataTrigger オブジェクトのみで構成 Setter できます。 オブジェクトに子を Setter 追加すると、 DataTrigger その子がオブジェクトの for に SetterBaseCollection 暗黙的に DataTrigger 追加されます。 EventSetter オブジェクトはサポートされていません。はオブジェクトのみを Style.Setters サポートします EventSetter

適用対象

こちらもご覧ください