Share via


RelativeSource, extension de balisage

Mise à jour : novembre 2007

Spécifie les propriétés d'une source de liaison RelativeSource, à utiliser dans un Binding, extension de balisage, ou lors de la définition de la propriété RelativeSource d'un élément Binding établie dans XAML.

Utilisation des attributs XAML

<Binding RelativeSource="{RelativeSource modeEnumValue}" .../>

Utilisation des attributs XAML (imbriqués dans l'extension de liaison)

<object property="{Binding RelativeSource={RelativeSource modeEnumValue} ...}" .../>

Utilisation des éléments d'objet XAML

<Binding>
  <Binding.RelativeSource>
    <RelativeSource Mode="modeEnumValue"/>
  </Binding.RelativeSource>
</Binding>
- or 
<Binding>
  <Binding.RelativeSource>
    <RelativeSource
      Mode="FindAncestor"
      AncestorType="{x:Type typeName}"
      AncestorLevel="intLevel"
    />
  </Binding.RelativeSource>
</Binding>

Valeurs XAML

modeEnumValue

Une des valeurs suivantes :

  • Le jeton de chaîne Self correspond à un RelativeSource comme créé avec sa propriété Mode définie à Self.

  • Le jeton de chaîne TemplatedParent correspond à un RelativeSource comme créé avec sa propriété Mode définie à TemplatedParent.

  • Le jeton de chaîne PreviousData correspond à un RelativeSource comme créé avec sa propriété Mode définie à PreviousData.

  • Voir ci-dessous pour des informations sur le mode FindAncestor.

FindAncestor

Le jeton de chaîne FindAncestor. L'utilisation de ce jeton accède à un mode dans lequel un RelativeSource spécifie un type d'ancêtre et, en option, un niveau d'ancêtre. Ce correspond à un RelativeSource comme créé avec sa propriété Mode définie à FindAncestor.

typeName

Nécessaire pour le mode FindAncestor. Le nom d'un type, qui remplit la propriété AncestorType.

intLevel

Facultatif pour le mode FindAncestor. Un niveau d'ancêtre (évalué vers la direction du parent dans l'arborescence logique).

Notes

Dans la syntaxe d'élément objet pour le mode FindAncestor représenté ci-dessus, la seconde syntaxe d'élément objet est utilisée spécifiquement pour le mode FindAncestor. Le mode FindAncestor requiert une valeur AncestorType. Vous devez affecter AncestorType comme un attribut à l'aide d'une référence x:Type, extension de balisage au type d'ancêtre à rechercher. La valeur AncestorType est utilisée lorsque la demande de liaison est traitée lors de l'exécution.

Pour le mode FindAncestor, la propriété AncestorLevel facultative peut contribuer à désambiguïser la recherche d'ancêtre dans les cas où il existe peut-être plusieurs ancêtres de ce type présents dans l'arborescence d'éléments.

Pour plus d'informations sur l'utilisation du mode FindAncestor, consultez RelativeSource

La description de la liaison de données en tant que concept n'est pas couverte ici, consultez Vue d'ensemble de la liaison de données.

Dans l'implémentation de processeur WPFXAML, la gestion de cette extension de balisage est définie par la classe RelativeSource.

RelativeSource est une extension de balisage. Les extensions de balisage sont en règle générale implémentées quand il est nécessaire que les valeurs d'attribut soient autre chose que des valeurs littérales ou des noms de gestionnaire, et que l'exigence est plus globale que le simple fait de mettre des convertisseurs de type sur certains types ou propriétés. Toutes les extensions de balisage en XAML utilisent les caractères { et } dans leur syntaxe d'attributs, qui est pour un processeur XAML la convention selon laquelle une extension de balisage doit traiter l'attribut. Pour plus d'informations, consultez Extensions de balisage et XAML.

Voir aussi

Concepts

Application d'un style et création de modèles

Vue d'ensemble du langage XAML

Extensions de balisage et XAML

Vue d'ensemble de la liaison de données

Vue d'ensemble des déclarations de liaison

Référence

Binding

x:Type, extension de balisage