FrameworkPropertyMetadata.Inherits Özellik

Tanım

Bağımlılık özelliğinin değerinin devralınabilir olup olmadığını gösteren bir değeri alır veya ayarlar.

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

Özellik Değeri

true özellik değeri devralınabilirse; aksi takdirde , false. Varsayılan değer: false.

Özel durumlar

Meta veriler zaten bir bağımlılık özelliği işlemine uygulanmıştır, böylece meta veriler korumalıdır ve meta verilerin özellikleri ayarlanamaz.

Örnekler

Aşağıdaki örnek, çeşitli bağımlılık özelliği alanlarından varsayılan meta verileri alır, üzerindeki çeşitli FrameworkPropertyMetadata özelliklerin değerini sorgular ve "meta veri tarayıcısı" uygulamak üzere bir tabloyu doldurmak için bilgileri kullanır.

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")

Açıklamalar

Özellik değeri devralma, WPF çerçevesi düzeyinde WPF özellik sisteminin bir özelliğidir. Bu özellik, bir XAML öğesi ağacının kökünde veya yakınında bir öğe üzerinde belirli bağımlılık özelliklerinin yerel olarak ayarlanabildiği ve ardından değerlerinin aynı özelliğe sahip olan alt öğelerin mantıksal ağacındaki tüm öğeler tarafından devralınabilmesini sağlar. Özellik değeri devralma varsayılan olarak etkin değildir ve etkinleştirmenin bazı performans etkileri vardır. Ayrıntılar için bkz. Özellik Değeri Devralma.

Not

Özellik değeri devralma, eklenmemiş bağımlılık özellikleri için çalışıyor gibi görünse de, çalışma zamanı ağacındaki belirli nesne-nesne bölümleri aracılığıyla eklenmemiş bir özelliğin devralma davranışı tanımlanmamıştır. Meta verilerde belirttiğiniz Inherits özellikleri kaydetmek için her zaman kullanınRegisterAttached.

türetilmiş sınıflarındaki PropertyMetadata özellikler genellikle nesne modelinde okuma-yazma olarak tanımlanır. Bu, örneğin başlatılmasından sonra ayarlanabilmeleri için geçerlidir. Ancak, meta veriler , AddOwnerveya OverrideMetadataçağrısının Registerbir parçası olarak tüketildikten sonra, özellik sistemi meta veri örneğini ve meta verilerin özelliklerini aktaran özellikleri artık sabit olarak kabul edilir. Bu özelliği bu meta veri örneğinde olduktan true sonra IsSealed ayarlamaya çalışmak bir özel durum oluşturur.

XAML Metni Kullanımı

Bu sınıfın üyeleri genellikle XAML'de kullanılmaz.

Şunlara uygulanır

Ayrıca bkz.