Freigeben über


MultiDataTrigger.Setters Eigenschaft

Definition

Ruft eine Auflistung von Setter-Objekten ab, die die Eigenschaftswerte beschreiben, die angewendet werden sollen, wenn alle Bedingungen des MultiDataTrigger erfüllt wurden.

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

Eigenschaftswert

SetterBaseCollection

Eine Auflistung von Setter-Objekten. Der Standardwert ist eine leere Auflistung.

Beispiele

Im folgenden Beispiel ist die ItemsSource Eigenschaft der ListBox Eigenschaft an Placeseine ObservableCollection<T> von Place Objekten gebunden. Place Objekte verfügen über Eigenschaften Name und State. Die Definition von Place und Places werden nicht angezeigt.

Jeder ListBoxItem der ListBox Anzeigen eines Place Objekts. Das Style Beispiel wird auf jede ListBoxItemAnwendung angewendet. Die Condition Elemente des MultiDataTrigger Angebens, dass, wenn das Name Datenelement und OR Place State das Datenelement vorhanden sindPortland, dann wird der Hintergrund des entsprechenden ListBoxItem Elements auf Cyanfestgelegt.

Beachten Sie, dass <MultiDataTrigger.Setters> es implizit ist.

<Window.Resources>
  <c:Places x:Key="PlacesData"/>

  <Style TargetType="ListBoxItem">
    <Style.Triggers>
      <DataTrigger Binding="{Binding Path=State}" Value="WA">
        <Setter Property="Foreground" Value="Red" />
      </DataTrigger>	
      <MultiDataTrigger>
        <MultiDataTrigger.Conditions>
          <Condition Binding="{Binding Path=Name}" Value="Portland" />
          <Condition Binding="{Binding Path=State}" Value="OR" />
        </MultiDataTrigger.Conditions>
        <Setter Property="Background" Value="Cyan" />
      </MultiDataTrigger>
    </Style.Triggers>
  </Style>

  <DataTemplate DataType="{x:Type c:Place}">
    <Canvas Width="160" Height="20">
      <TextBlock FontSize="12"
             Width="130" Canvas.Left="0" Text="{Binding Path=Name}"/>
      <TextBlock FontSize="12" Width="30"
                 Canvas.Left="130" Text="{Binding Path=State}"/>
    </Canvas>
  </DataTemplate>
</Window.Resources>

<StackPanel>
  <TextBlock FontSize="18" Margin="5" FontWeight="Bold"
    HorizontalAlignment="Center">Data Trigger Sample</TextBlock>
  <ListBox Width="180" HorizontalAlignment="Center" Background="Honeydew"
    ItemsSource="{Binding Source={StaticResource PlacesData}}"/>
</StackPanel>

Hinweise

MultiDataTrigger Ermöglicht Ihnen das Starten von Aktionen mithilfe der EnterActions Eigenschaften oder ExitActions festlegen von Eigenschaftenwerten Setter mithilfe von Objekten, wenn die gebundenen Daten eine Reihe von Bedingungen erfüllen.

Wenn zwei Setter Objekte in derselben oder unterschiedlichen Settersammlungen vorhanden sind, die die gleiche Eigenschaft festlegen, wird die Setter zuletzt deklarierte Eigenschaft verwendet.

Das Hinzufügen eines Setter untergeordneten Objekts zu einem MultiDataTrigger Objekt fügt es SetterBaseCollection MultiDataTrigger implizit dem Objekt hinzu. EventSetterObjekte werden nicht unterstützt; unterstützt EventSetter nur Style.Setters Objekte.

Verwendung von XAML-Eigenschaftenelementen

<object>  
    zeroOrMoreSetters  
</object>  

XAML-Werte

zeroOrMoreSetters
Null oder mehr Setter Objekte.

Gilt für

Siehe auch