FrameworkPropertyMetadata.AffectsArrange Özellik

Tanım

Bir bağımlılık özelliğinin düzen altyapısı işlemleri sırasında düzenleme geçişini etkileyip etkilemeyebileceğine ilişkin bir değer alır veya ayarlar.

public:
 property bool AffectsArrange { bool get(); void set(bool value); };
public bool AffectsArrange { get; set; }
member this.AffectsArrange : bool with get, set
Public Property AffectsArrange As Boolean

Özellik Değeri

true bu meta verilerin bulunduğu bağımlılık özelliği düzenleme geçişini etkileyebilir; aksi takdirde , false. Varsayılan değer: false.

Özel durumlar

Meta veriler zaten bir bağımlılık özelliği işlemine uygulanmış, 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, içindeki ç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

FrameworkElement ve FrameworkContentElement bir öğede var olan tüm bağımlılık özelliklerinde etkin değer değişikliklerini izleyen bir uygulamasını OnPropertyChanged ekleyin. Bu mantığın bir parçası olarak, etkin değeri değiştiren ve meta verileri AffectsArrange ayarlanmış true olan bağımlılık özellikleri, bu öğenin görsellerini geçersiz kılmaya yönelik ertelenen bir istek başlatır (çağrısı InvalidateArrange). Bu WPF çerçeve düzeyi uygulaması zaten mevcut olduğundan, WPF çerçeve düzeyi düzen davranışını önemli ölçüde değiştirmediğiniz veya değiştirmediğiniz sürece ile bağımlılık özelliklerini AffectsArrange aramanız gerekmez.

Özel OnPropertyChanged uygulamalar, bağımlılık özelliği değişikliklerinde de benzer davranışlara sahip olmak isteyebilir.AffectsArrangetrue

türetilmiş sınıflardaki 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 , Registerveya AddOwnerçağrısının OverrideMetadatabir parçası olarak tüketildikten sonra, özellik sistemi meta verilerin özelliklerini aktaran meta veri örneğini ve özelliklerini artık sabit olarak kabul eder. Bu meta veri örneğinde olduktan IsSealed sonra true bu özelliği ayarlamaya çalışmak bir özel durum oluşturur.

XAML Metin Kullanımı

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

Şunlara uygulanır

Ayrıca bkz.