FrameworkPropertyMetadata.Inherits Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob der Wert der Abhängigkeitseigenschaft vererbbar ist.
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
Eigenschaftswert
truewenn der Eigenschaftswert vererbbar ist; andernfalls . false Der Standardwert lautet false.
Ausnahmen
Die Metadaten wurden bereits auf einen Abhängigkeitseigenschaftsvorgang angewendet, sodass Metadaten versiegelt sind und Eigenschaften der Metadaten nicht festgelegt werden können.
Beispiele
Im folgenden Beispiel werden die Standardmetadaten aus verschiedenen Abhängigkeitseigenschaftsfeldern abgerufen, der Wert verschiedener FrameworkPropertyMetadata Eigenschaften abgefragt und die Informationen zum Auffüllen einer Tabelle verwendet, um einen "Metadatenbrowser" zu implementieren.
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")
Hinweise
Die Eigenschaftswertvererbung ist ein Feature des WPF Eigenschaftensystems auf WPF Frameworkebene, wobei bestimmte Abhängigkeitseigenschaften lokal für ein Element bei oder in der Nähe des Stamms einer XAML-Elementstruktur festgelegt werden können und dann ihren Wert von allen Elementen innerhalb der logischen Struktur untergeordneter Elemente erben, die ebenfalls diese Eigenschaft besitzen. Die Eigenschaftswertvererbung ist standardmäßig nicht aktiviert, und die Aktivierung hat einige Leistungsauswirkungen. Weitere Informationen finden Sie unter Eigenschaftswertvererbung.
Note
Obwohl die Eigenschaftswertvererbung möglicherweise für nicht angefügte Abhängigkeitseigenschaften funktioniert, ist das Vererbungsverhalten für eine nicht angefügte Eigenschaft über bestimmte Objektobjektteilungen in der Laufzeitstruktur nicht definiert. Verwenden Sie immer RegisterAttached, um Eigenschaften zu registrieren, bei denen Sie Inherits in den Metadaten angeben.
Eigenschaften für abgeleitete Klassen PropertyMetadata werden in der Regel im Objektmodell als Lese-/Schreibzugriff definiert. Dies ist so, dass sie nach der Initialisierung der Instanz angepasst werden können. Nachdem die Metadaten jedoch als Teil eines Aufrufs Registervon , AddOwneroder , oder OverrideMetadata, das Eigenschaftensystem verwendet wird, wird die Metadateninstanz und -eigenschaften, die die Besonderheiten der Metadaten vermitteln, jetzt als unveränderlich betrachtet. Wenn Sie versuchen, diese Eigenschaft festzulegen, IsSealedtrue wird in dieser Metadateninstanz eine Ausnahme ausgelöst.
XAML-Textverwendung
Elemente dieser Klasse werden in der Regel nicht in XAML verwendet.