Partager via


ContentPropertyAttribute Classe

Définition

Indique quelle propriété d’un type est 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 attribué.

public ref class ContentPropertyAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=true)]
public sealed class ContentPropertyAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=true)>]
type ContentPropertyAttribute = class
    inherit Attribute
Public NotInheritable Class ContentPropertyAttribute
Inherits Attribute
Héritage
ContentPropertyAttribute
Attributs

Exemples

L’exemple suivant crée une classe nommée Film qui a un ContentPropertyAttribute appliqué. La propriété nommée Title est indiquée en tant que propriété de contenu.

[ContentProperty("Title")]
public class Film
{
    public Film()
    {
    }

    public string Title
    {
        get { return _title; }
        set { _title = value; }
    }

    private string _title;
}
<ContentProperty("Title")>
Public Class Film
    Public Sub New()
    End Sub

    Public Property Title() As String
        Get
            Return _title
        End Get
        Set(ByVal value As String)
            _title = value
        End Set
    End Property

    Private _title As String
End Class

Remarques

Si la propriété associée d’un ContentPropertyAttribute n’est pas de type string ou object, un processeur XAML tente d’identifier une technique de conversion de valeur. La première case activée concerne la conversion de type natif, soit des primitives du langage XAML, soit des conversions natives spécifiques activées par cette implémentation d’enregistreur XAML particulière. L’étape suivante consiste à rechercher un convertisseur de type. Dans les implémentations .NET, un convertisseur de type est identifié en fonction TypeConverterAttribute du niveau membre ou de la définition de niveau de type qui s’applique. Si aucune conversion de valeur ne peut être identifiée, un enregistreur d’objets XAML lève généralement une exception.

Pour accepter plusieurs éléments d’objet en tant que contenu, le type de la propriété de contenu XAML doit être pris en charge en tant que type de collection.

En raison de la Inherited=true déclaration de l’attribut, une valeur pour un ContentPropertyAttribute applique normalement une désignation de propriété de contenu à toutes les classes dérivées. L’application d’un vide ContentPropertyAttribute permet à une classe dérivée de supprimer une déclaration d’un attribut de propriété de contenu par une classe de base (et de noter que la classe n’a pas de propriété de contenu). L’application d’un nom ContentPropertyAttribute différent remplace l’hérité ContentPropertyAttribute par le nouveau.

Dans les versions précédentes du .NET Framework, cette classe existait dans l’assembly WindowsBase spécifique à WPF et avait également une implémentation parallèle dans Windows Communication Foundation (WCF). À partir de .NET Framework 4.0, ContentPropertyAttribute se trouve dans l’assembly System.Xaml. Pour plus d'informations, consultez Types Migrated from WPF to System.Xaml.

Remarques sur l'utilisation de WPF

Exemple d’une classe dans Windows Presentation Foundation (WPF) qui utilise le ContentPropertyAttribute est ContentControl, dont la Button classe hérite. La ContentControl.Content propriété est la propriété de contenu définie par .ContentPropertyAttribute Si un Button est instancié en XAML, le Content de Button sera défini sur l’élément qui se trouve entre les balises de bouton de début et de fin.

Constructeurs

ContentPropertyAttribute()

Initialise une nouvelle instance de la classe ContentPropertyAttribute.

ContentPropertyAttribute(String)

Initialise une nouvelle instance de la classe ContentPropertyAttribute, en utilisant le nom spécifié.

Propriétés

Name

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

TypeId

Lors de l'implémentation dans une classe dérivée, obtient un identificateur unique pour l'objet Attribute.

(Hérité de Attribute)

Méthodes

Equals(Object)

Retourne une valeur qui indique si cette instance est égale à un objet spécifié.

(Hérité de Attribute)
GetHashCode()

Retourne le code de hachage de cette instance.

(Hérité de Attribute)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
IsDefaultAttribute()

En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut pour la classe dérivée.

(Hérité de Attribute)
Match(Object)

En cas de substitution dans une classe dérivée, retourne une valeur indiquant si cette instance équivaut à un objet spécifié.

(Hérité de Attribute)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Implémentations d’interfaces explicites

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch.

(Hérité de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Récupère les informations de type pour un objet, qui peuvent être utilisées pour obtenir les informations de type d'une interface.

(Hérité de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1).

(Hérité de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fournit l'accès aux propriétés et aux méthodes exposées par un objet.

(Hérité de Attribute)

S’applique à

Voir aussi