FrameworkPropertyMetadata.Inherits Propriété
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.
Obtient ou définit une valeur qui indique si la valeur de la propriété de dépendance peut être héritée.
public:
property bool Inherits { bool get(); void set(bool value); };
public bool Inherits { get; set; }
member this.Inherits : bool with get, set
Public Property Inherits As Boolean
Valeur de propriété
true
si la valeur de la propriété peut être héritée ; sinon, false
. La valeur par défaut est false
.
Exceptions
Les métadonnées ont déjà été appliquées à une opération de propriété de dépendance : elles sont donc sealed et les propriétés des métadonnées ne peuvent pas être définies.
Exemples
L’exemple suivant obtient les métadonnées par défaut à partir de différents champs de propriété de dépendance, interroge la valeur de différentes FrameworkPropertyMetadata propriétés sur celle-ci et utilise les informations pour remplir une table pour implémenter un « navigateur de métadonnées ».
pm = dp.GetMetadata(dp.OwnerType);
pm = dp.GetMetadata(dp.OwnerType)
FrameworkPropertyMetadata fpm = pm as FrameworkPropertyMetadata;
if (fpm!=null) {
AffectsArrange.Text = (fpm.AffectsArrange) ? "Yes" : "No";
AffectsMeasure.Text = (fpm.AffectsMeasure) ? "Yes" : "No";
AffectsRender.Text = (fpm.AffectsRender) ? "Yes" : "No";
Inherits.Text = (fpm.Inherits) ? "Yes" : "No";
IsDataBindingAllowed.Text = (fpm.IsDataBindingAllowed) ? "Yes" : "No";
BindsTwoWayByDefault.Text = (fpm.BindsTwoWayByDefault) ? "Yes" : "No";
}
Dim fpm As FrameworkPropertyMetadata = TryCast(pm, FrameworkPropertyMetadata)
If fpm IsNot Nothing Then
AffectsArrange.Text = If((fpm.AffectsArrange), "Yes", "No")
AffectsMeasure.Text = If((fpm.AffectsMeasure), "Yes", "No")
AffectsRender.Text = If((fpm.AffectsRender), "Yes", "No")
[Inherits].Text = If((fpm.Inherits), "Yes", "No")
IsDataBindingAllowed.Text = If((fpm.IsDataBindingAllowed), "Yes", "No")
BindsTwoWayByDefault.Text = If((fpm.BindsTwoWayByDefault), "Yes", "No")
Remarques
L’héritage de valeur de propriété est une fonctionnalité du système de propriétés WPF au niveau de l’infrastructure WPF, dans laquelle certaines propriétés de dépendance peuvent être définies localement sur un élément à ou près de la racine d’une arborescence d’éléments XAML, puis ont leur valeur héritée par tous les éléments de l’arborescence logique des éléments enfants qui possèdent également cette propriété. L’héritage des valeurs de propriété n’est pas activé par défaut et l’activation a des implications sur les performances. Pour plus d’informations, consultez Héritage de la valeur de propriété.
Notes
Bien que l’héritage de valeur de propriété semble fonctionner pour les propriétés de dépendance non attachées, le comportement d’héritage d’une propriété non attachée via certaines divisions d’objets dans l’arborescence d’exécution n’est pas défini. RegisterAttached Utilisez toujours pour inscrire des propriétés dans lesquelles vous spécifiez Inherits les métadonnées.
Les propriétés sur les classes dérivées de PropertyMetadata sont généralement définies dans le modèle objet comme en lecture-écriture. C’est pourquoi ils peuvent être ajustés après l’initialisation de l’instance. Toutefois, une fois les métadonnées consommées dans le cadre d’un appel à Register, AddOwnerou , le OverrideMetadatasystème de propriétés scellera cette instance de métadonnées et les propriétés qui transmettent les spécificités des métadonnées sont désormais considérées comme immuables. La tentative de définition de cette propriété après IsSealed avoir true
été effectuée sur cette instance de métadonnées déclenche une exception.
Utilisation du texte XAML
Les membres de cette classe ne sont généralement pas utilisés en XAML.