FrameworkPropertyMetadata.Inherits Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví hodnotu, která určuje, zda hodnota vlastnosti závislosti je zděděná.
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
Hodnota vlastnosti
truepokud je hodnota vlastnosti zděděná; v opačném případě . false Výchozí hodnota je false.
Výjimky
Metadata již byla použita na operaci vlastnosti závislosti, takže metadata jsou zapečetěná a vlastnosti metadat nelze nastavit.
Příklady
Následující příklad získá výchozí metadata z různých polí vlastností závislostí, dotazuje se na hodnotu různých FrameworkPropertyMetadata vlastností a pomocí informací naplní tabulku k implementaci "prohlížeče metadat".
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")
Poznámky
Dědičnost hodnot vlastností je funkce systému vlastností WPF (Windows Presentation Foundation) na úrovni architektury WPF (Windows Presentation Foundation), kde mohou být některé vlastnosti závislosti místně nastaveny na elementu ve stromu elementů XAML nebo v blízkosti kořenového stromu elementů XAML a pak mají jejich hodnotu zděděnou všemi prvky v rámci logického stromu podřízených elementů, které mají tuto vlastnost. Dědičnost hodnot vlastností není ve výchozím nastavení povolená a povolení má určité dopady na výkon. Podrobnosti naleznete v tématu Dědičnost hodnot vlastností.
Note
I když se může zdát, že dědičnost hodnot vlastností může fungovat pro neapojené vlastnosti závislostí, chování dědičnosti pro neapojenou vlastnost prostřednictvím určitých dělení objektů objektu ve stromu modulu runtime není definováno. Vždy použijte RegisterAttached k registraci vlastností, pokud v metadatech zadáváte Inherits.
Vlastnosti odvozených tříd PropertyMetadata jsou obvykle definovány v objektovém modelu jako čtení a zápis. To znamená, že je lze upravit po inicializaci instance. Jakmile se však metadata spotřebují jako součást volání Register, AddOwnernebo OverrideMetadata, systém vlastností zapečetí, že instance metadat a vlastnosti, které předávají specifika metadat, jsou nyní považovány za neměnné. Při pokusu o nastavení této vlastnosti po IsSealed použití true této instance metadat dojde k výjimce.
Použití textu XAML
Členy této třídy se obvykle nepoužívají v JAZYCE XAML.