ContentPropertyAttribute Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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
- 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) |