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 attribut.

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 une ContentPropertyAttribute application. La propriété nommée Title est indiquée comme 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 type n’est pas de type string ou objectqu’un processeur XAML tente d’identifier une technique de conversion de valeur. La première vérification 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 plus d’un seul élément 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 une ContentPropertyAttribute propriété de contenu applique normalement une désignation de propriété de contenu à toutes les classes dérivées. L’application d’une classe vide ContentPropertyAttribute permet à une classe dérivée de supprimer une déclaration d’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 différent ContentPropertyAttribute 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). À compter de .NET Framework 4.0, ContentPropertyAttribute se trouve dans l’assembly System.Xaml. Pour plus d’informations, consultez Types migrés de WPF vers System.Xaml.

Notes d’utilisation WPF

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

Constructeurs

Nom Description
ContentPropertyAttribute()

Initialise une nouvelle instance de la classe ContentPropertyAttribute.

ContentPropertyAttribute(String)

Initialise une nouvelle instance de la ContentPropertyAttribute classe à l’aide du nom spécifié.

Propriétés

Nom Description
Name

Obtient le nom de la propriété qui est la propriété de contenu.

TypeId

En cas d’implémentation dans une classe dérivée, obtient un identificateur unique pour cette Attribute.

(Hérité de Attribute)

Méthodes

Nom Description
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 pour cette instance.

(Hérité de Attribute)
GetType()

Obtient la 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 de la classe dérivée.

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

En cas de substitution dans une classe dérivée, retourne une valeur qui indique si cette instance est égale à un objet spécifié.

(Hérité de Attribute)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

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

(Hérité de Object)

Implémentations d’interfaces explicites

Nom Description
_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 d’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 méthodes exposées par un objet.

(Hérité de Attribute)

S’applique à

Voir aussi