MultiDataTrigger.Setters Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera kolekcję Setter obiektów opisujących wartości właściwości, które mają być stosowane, gdy zostaną spełnione wszystkie warunki MultiDataTrigger .
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
Wartość właściwości
Kolekcja obiektów Setter. Wartość domyślna to pusta kolekcja.
Przykłady
W poniższym przykładzie ItemsSource właściwość ListBox obiektu jest powiązana z Places
obiektem ObservableCollection<T> Place
. Place
obiekty mają właściwości Name
i State
. Definicja i Place
Places
nie są wyświetlane.
Każdy ListBoxItem z nich ListBox wyświetla Place
obiekt. Element Style w przykładzie jest stosowany do każdego ListBoxItemelementu . Condition Elementy MultiDataTrigger elementu określają, że jeśli Name
element danych i State
Place
są Portland
i OR
odpowiednio, tło odpowiadające ListBoxItem mu jest ustawione na Cyan
wartość .
Należy pamiętać, że <MultiDataTrigger.Setters>
jest to niejawne.
<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>
Uwagi
MultiDataTrigger Umożliwia uruchamianie akcji przy użyciu EnterActions właściwości lub ExitActions lub ustawianie wartości właściwości przy użyciu Setter obiektów, gdy powiązane dane spełniają zestaw warunków.
Jeśli istnieją dwa Setter obiekty w tych samych lub różnych kolekcjach zestawów ustawiających tę samą właściwość, Setter jest używany zadeklarowany ostatnio.
Setter Dodanie elementu podrzędnego MultiDataTrigger do obiektu niejawnie dodaje go do SetterBaseCollection obiektu dla MultiDataTrigger obiektu . EventSetterobiekty nie są obsługiwane; obsługuje EventSetter tylko Style.Setters obiekty.
Użycie elementu właściwości języka XAML
<object>
zeroOrMoreSetters
</object>
Wartości XAML
zeroOrMoreSetters
Zero lub więcej Setter obiektów.