MultiDataTrigger Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente un déclencheur qui applique des valeurs de propriété ou exécute des actions lorsque les données liées remplissent un ensemble de conditions.
public ref class MultiDataTrigger sealed : System::Windows::TriggerBase, System::Windows::Markup::IAddChild
[System.Windows.Markup.ContentProperty("Setters")]
public sealed class MultiDataTrigger : System.Windows.TriggerBase, System.Windows.Markup.IAddChild
[<System.Windows.Markup.ContentProperty("Setters")>]
type MultiDataTrigger = class
inherit TriggerBase
interface IAddChild
Public NotInheritable Class MultiDataTrigger
Inherits TriggerBase
Implements IAddChild
- Héritage
- Attributs
- Implémente
Exemples
Dans l’exemple suivant, la ItemsSource propriété de ListBox est liée à Places
, un ObservableCollection<T> d’objets Place
.
Place
les objets ont des propriétés Name
et State
. La définition de et Places
ne s’affiche Place
pas.
Chacun ListBoxItem des ListBox affiche un Place
objet. dans Style l’exemple est appliqué à chaque ListBoxItem. Les Condition éléments du MultiDataTrigger spécifient que si et Name
State
de l’élément Place
de données sont Portland
et OR
respectivement, l’arrière-plan de correspondant ListBoxItem est défini sur Cyan
.
<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>
Remarques
Un MultiDataTrigger objet est similaire à un MultiTrigger, sauf que les conditions d’un MultiDataTrigger sont basées sur les valeurs de propriété de données liées au lieu de celles d’un UIElement. Dans un MultiDataTrigger, une condition est remplie lorsque la valeur de propriété de l’élément de données correspond au spécifié Value. Vous pouvez ensuite utiliser des setters ou les EnterActions propriétés et ExitActions pour appliquer des modifications ou des actions de démarrage lorsque toutes les conditions sont remplies.
La Setters propriété d’un MultiDataTrigger objet ne peut être constituée que d’objets Setter . L’ajout d’un Setter enfant à un MultiDataTrigger objet l’ajoute implicitement au SetterBaseCollection pour l’objet MultiDataTrigger . EventSetter les objets ne sont pas pris en charge ; Prend uniquement Style.Setters en charge les EventSetter objets.
Pour plus d’informations sur l’utilisation des déclencheurs et sur l’utilisation d’autres techniques, consultez Vue d’ensemble de la création de modèles de données.
Constructeurs
MultiDataTrigger() |
Initialise une nouvelle instance de la classe MultiDataTrigger. |
Propriétés
Conditions |
Obtient une collection d'objets Condition. Les modifications apportées aux valeurs de propriété sont appliquées lorsque toutes les conditions dans la collection sont remplies. |
DependencyObjectType |
Obtient le DependencyObjectType qui encapsule le type CLR de cette instance. (Hérité de DependencyObject) |
Dispatcher |
Obtient le Dispatcher associé à DispatcherObject. (Hérité de DispatcherObject) |
EnterActions |
Obtient une collection d’objets TriggerAction à appliquer quand l’objet de déclencheur devient actif. Cette propriété ne s’applique pas à la classe EventTrigger. (Hérité de TriggerBase) |
ExitActions |
Obtient une collection d’objets TriggerAction à appliquer quand l’objet déclencheur devient inactif. Cette propriété ne s’applique pas à la classe EventTrigger. (Hérité de TriggerBase) |
IsSealed |
Récupère une valeur qui indique si cette instance est actuellement sealed (en lecture seule). (Hérité de DependencyObject) |
Setters |
Obtient une collection des objets Setter qui décrivent les valeurs de propriété à appliquer lorsque toutes les conditions du MultiDataTrigger sont remplies. |
Méthodes
CheckAccess() |
Détermine si le thread appelant a accès à ce DispatcherObject. (Hérité de DispatcherObject) |
ClearValue(DependencyProperty) |
Efface la valeur locale d’une propriété. La propriété à effacer est spécifiée par un identificateur DependencyProperty. (Hérité de DependencyObject) |
ClearValue(DependencyPropertyKey) |
Efface la valeur locale d’une propriété en lecture seule. La propriété à effacer est spécifiée par DependencyPropertyKey. (Hérité de DependencyObject) |
CoerceValue(DependencyProperty) |
Convertit la valeur de la propriété de dépendance spécifiée. Pour cela, on appelle toute fonction CoerceValueCallback spécifiée dans les métadonnées de propriété pour la propriété de dépendance telle qu’elle existe sur le DependencyObject appelant. (Hérité de DependencyObject) |
Equals(Object) |
Détermine si un DependencyObject fourni est équivalent au DependencyObject réel. (Hérité de DependencyObject) |
GetHashCode() |
Obtient un code de hachage pour ce DependencyObject. (Hérité de DependencyObject) |
GetLocalValueEnumerator() |
Crée un énumérateur spécialisé pour déterminer quelles propriétés de dépendance ont des valeurs définies localement sur ce DependencyObject. (Hérité de DependencyObject) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
GetValue(DependencyProperty) |
Retourne la valeur effective actuelle d’une propriété de dépendance sur cette instance d’un DependencyObject. (Hérité de DependencyObject) |
InvalidateProperty(DependencyProperty) |
Réévalue la valeur effective de la propriété de dépendance spécifiée. (Hérité de DependencyObject) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Méthode appelée chaque fois que la valeur effective d’une propriété de dépendance sur ce DependencyObject a été mise à jour. La propriété de dépendance spécifique qui a changé est signalée dans les données d’événement. (Hérité de DependencyObject) |
ReadLocalValue(DependencyProperty) |
Retourne la valeur locale d’une propriété de dépendance, si elle existe. (Hérité de DependencyObject) |
SetCurrentValue(DependencyProperty, Object) |
Définit la valeur d’une propriété de dépendance sans modifier sa valeur source. (Hérité de DependencyObject) |
SetValue(DependencyProperty, Object) |
Définit la valeur locale d’une propriété de dépendance, spécifiée par son identificateur de propriété de dépendance. (Hérité de DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Définit la valeur locale d’une propriété de dépendance en lecture seule, spécifiée par l’identificateur DependencyPropertyKey de la propriété de dépendance. (Hérité de DependencyObject) |
ShouldSerializeProperty(DependencyProperty) |
Retourne une valeur qui indique si les processus de sérialisation doivent sérialiser la valeur de la propriété de dépendance fournie. (Hérité de DependencyObject) |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |
VerifyAccess() |
Garantit que le thread appelant a accès à DispatcherObject. (Hérité de DispatcherObject) |
Implémentations d’interfaces explicites
IAddChild.AddChild(Object) |
Ajoute un objet enfant. |
IAddChild.AddText(String) |
Ajoute le contenu textuel d’un nœud à l’objet. |