Condition.Binding Propriété

Définition

Obtient ou définit la liaison qui spécifie la propriété de la condition. Cela s’applique uniquement aux objets MultiDataTrigger.

public:
 property System::Windows::Data::BindingBase ^ Binding { System::Windows::Data::BindingBase ^ get(); void set(System::Windows::Data::BindingBase ^ value); };
public System.Windows.Data.BindingBase Binding { get; set; }
member this.Binding : System.Windows.Data.BindingBase with get, set
Public Property Binding As BindingBase

Valeur de propriété

La valeur par défaut est null.

Exemples

Dans l’exemple suivant, le ItemsSource de ListBox est lié à Places, un ObservableCollection<T> d’objets Place . Les objets Place ont les propriétés Name et State.

Chacun ListBoxItem de affiche ListBox un objet Place . dans Style l’exemple est appliqué à chaque ListBoxItem. Les Conditions de sont MultiDataTrigger spécifiés de telle sorte que si l’élément de données Name et State of the Place est respectivement « Portland » et « OR », 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

MultiDataTriggervous permettent de définir des valeurs de propriété en fonction des valeurs des données retournées. Par exemple, si vous affichez une liste d’éléments de tâche, vous pouvez afficher une tâche avec un arrière-plan rouge si elle est prioritaire et n’a pas été examinée depuis plus de deux semaines.

Vous créez une liaison et utilisez la Path propriété pour établir une liaison à une propriété d’un certain objet (l’objet source de liaison). Par exemple, vous pouvez lier à la propriété Priority d’une tâche. Pour plus d’informations, consultez Vue d’ensemble de la liaison de données.

Notez que s’il s’agit d’une condition pour un MultiDataTrigger, les Binding propriétés et Value doivent être définies. La définition de la Property valeur entraînerait une exception dans ce cas.

Utilisation d'attributs XAML

<object property="{Binding  declaration}"/>  

Utilisation des éléments de propriété XAML

<object>  
  <object.Binding>  
    <Binding …/>  
  </object.Binding>  
</object>  

Valeurs XAML

déclaration
Déclaration de liaison. Pour plus d’informations, consultez Vue d’ensemble des déclarations de liaison.

S’applique à

Voir aussi