ContentPropertyAttribute Attribute

Indique la propriété d'un type qui constitue la propriété de contenu XAML. Un processeur XAML utilise ces informations lors du traitement des éléments enfants XAML des représentations XAML du type avec attributs.

Héritage

Object
  Attribute
    ContentPropertyAttribute

Syntaxe


public ref class ContentPropertyAttribute sealed : Attribute

Attributs

[AttributeUsage(512)]
[Version(0x6020000)]

Membres

ContentPropertyAttributeAttribut possède ces types de membres :

Constructeurs

ContentPropertyAttributeAttribut possède ces constructeurs.

ConstructeurDescription
ContentPropertyAttribute Initializes a new instance of the ContentPropertyAttribute class.

 

Champs

ContentPropertyAttributeAttribut possède ces champs.

ChampType de donnéesDescription
Name

System.String [.NET] | Platform::String [C++]

Obtient le nom de la propriété qui correspond à la propriété de contenu déclarée.

 

Méthodes

The ContentPropertyAttribute Attribut hérite des méthodes de Object Classe.

Remarques

Cet attribut est utilisé pour identifier qu'une propriété spécifique du type avec attributs doit être considérée comme la propriété de contenu XAML lorsqu'elle est interprétée par les analyseurs XAML et d'autres codes d'infrastructure XAML. Le rôle d'une propriété de contenu XAML est de fournir une syntaxe XAML de type sténo qui peut omettre des balises d'élément de propriété pour cette propriété. La suppression des éléments de propriété rend la forme parent/enfants plus naturelle dans le balisage XAML. Pour plus d'informations sur les propriétés du contenu XAML, consultez la section « Propriétés de contenu XAML » du Basic XAML syntax guide.

L'exemple d'une classe dans le vocabulaire XAML Windows Runtime par défaut avec ContentPropertyAttribute appliqué est Panel. La propriété Children sur Panel est identifiée comme la propriété de contenu XAML, telle qu'elle est définie par ContentPropertyAttribute et sa valeur Name. Les informations de propriété de contenu sont héritées par tous les types dérivés de Panel, tels que Grid et Canvas et StackPanel.

Ce code approche comment Panel applique ContentPropertyAttribute en C# (la définition réelle est appliquée en code natif, ceci à titre d'illustration uniquement) :


[ContentProperty(Name = "Children")]
    public class Panel : FrameworkElement
    { ...}

En utilisant Panel et sa classe dérivée StackPanel pour illustrer le concept de propriété de contenu XAML, vous pouvez avoir le code XAML suivant :


<StackPanel>
  <StackPanel.Children>
    <TextBlock>Testing content attribute</TextBlock>
  </StackPanel.Children>
</StackPanel>

Ce qui précède équivaut au code XAML plus lisible suivant :


<StackPanel>
  <TextBlock>Testing content attribute</TextBlock>
</StackPanel>

En cas d'analyse par un analyseur XAML, celui-ci sait au moyen de l'attribut ContentPropertyAttribute appliqué à Panel que du contenu trouvé dans le corps d'une balise StackPanel doit être utilisé pour définir la valeur de Children sur l'instance StackPanel créée.

Un autre exemple important de ContentPropertyAttribute dans l'action peut être vu dans la classe TextBlock. TextBlock utilise Inlines comme sa propriété de contenu, et la classe inline par défaut Run utilise Text comme sa propriété de contenu. Une fois combinées, les propriétés de contenu activent une syntaxe inline simple comme <TextBlock>Hello</TextBlock>, même si le graphique de l'objet créé par ce code XAML est plus complexe et est également capable de prendre en charge plusieurs éléments inclus explicites si vous le souhaitez.

Conditions requises

Client minimal pris en charge

Windows 8

Serveur minimal pris en charge

Windows Server 2012

Espace de noms

Windows.UI.Xaml.Markup
Windows::UI::Xaml::Markup [C++]

Métadonnées

Windows.winmd

Voir aussi

Attribute
Guide de la syntaxe XAML de base
XAML, vue d'ensemble

 

 

Afficher:
© 2015 Microsoft