DependencyProperty.OverrideMetadata Yöntem

Tanım

Belirtilen türdeki örneklerde mevcut olduğunda bu bağımlılık özelliği için, ilk bağımlılık özelliği kaydında sağlanan meta veriler yerine alternatif meta veriler sağlar.

Aşırı Yüklemeler

OverrideMetadata(Type, PropertyMetadata)

Belirtilen türdeki örneklerde mevcut olduğunda bu bağımlılık özelliği için alternatif meta verileri belirtir ve temel türlerden devralındığı için bağımlılık özelliği için var olan meta verileri geçersiz kılınır.

OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey)

Belirtilen türdeki örneklerde mevcut olduğunda salt okunur bir bağımlılık özelliği için alternatif meta veriler sağlar ve ilk bağımlılık özelliği kaydında sağlanan meta verileri geçersiz kılarak. Özel durum oluşturmamak için salt okunur bağımlılık özelliğini geçirmeniz DependencyPropertyKey gerekir.

OverrideMetadata(Type, PropertyMetadata)

Belirtilen türdeki örneklerde mevcut olduğunda bu bağımlılık özelliği için alternatif meta verileri belirtir ve temel türlerden devralındığı için bağımlılık özelliği için var olan meta verileri geçersiz kılınır.

public:
 void OverrideMetadata(Type ^ forType, System::Windows::PropertyMetadata ^ typeMetadata);
public void OverrideMetadata (Type forType, System.Windows.PropertyMetadata typeMetadata);
member this.OverrideMetadata : Type * System.Windows.PropertyMetadata -> unit
Public Sub OverrideMetadata (forType As Type, typeMetadata As PropertyMetadata)

Parametreler

forType
Type

Bu bağımlılık özelliğinin devralındığı ve sağlanan alternatif meta verilerin uygulanacağı tür.

typeMetadata
PropertyMetadata

Geçersiz kılma türündeki bağımlılık özelliğine uygulanacak meta veriler.

Özel durumlar

Salt okunur bağımlılık özelliğindeki meta verileri geçersiz kılma girişiminde bulunuldu (bu işlem bu imza kullanılarak yapılamaz).

Sağlanan tür üzerinde mevcut olduğundan bağımlılık özelliği için meta veriler zaten oluşturulmuştur.

Açıklamalar

Özellik sistemi bağımlılık özelliğini kullanmadan önce bağımlılık özelliği meta verileri geçersiz kılınmalıdır. Bu, bağımlılık özelliğini kaydeden sınıf kullanılarak belirli örneklerin oluşturulduğu zamana eşitlenir. çağrısı OverrideMetadata yalnızca bu yöntemin parametresi olarak forType kendisini sağlayan türün statik oluşturucuları içinde veya benzer bir örnekleme yoluyla gerçekleştirilmelidir. Sahip türünün örnekleri mevcut olduktan sonra meta verileri değiştirmeye çalışmak özel durum oluşturmaz, ancak özellik sisteminde tutarsız davranışlara neden olur.

Bu yöntemle belirli bir türetilmiş sınıf geçersiz kılma için meta veriler oluşturulduktan sonra, bu türetilmiş sınıftaki meta verileri geçersiz kılma girişimleri bir özel durum oluşturur.

Sağlanan meta veriler, temel sahipte mevcut olduğundan bağımlılık özelliğinin özellik meta verileriyle birleştirilir. Özgün temel meta verilerde belirtilen tüm özellikler kalıcı olur; yalnızca yeni meta verilerde özel olarak değiştirilen özellikler temel meta verilerin özelliklerini geçersiz kılar. gibi DefaultValue bazı özellikler, yeni meta verilerde belirtilirse değiştirilir. gibi PropertyChangedCallbackdiğerleri birleştirilir. Sonuç olarak, birleştirme davranışı geçersiz kılma için kullanılan özellik meta veri türüne bağlıdır, bu nedenle burada açıklanan davranış WPF bağımlılık özellikleri tarafından kullanılan mevcut özellik meta veri sınıflarına yöneliktir. Ayrıntılar için bkz . Bağımlılık Özelliği Meta Verileri ve Çerçeve Özellik Meta Verileri.

Şunlara uygulanır

OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey)

Belirtilen türdeki örneklerde mevcut olduğunda salt okunur bir bağımlılık özelliği için alternatif meta veriler sağlar ve ilk bağımlılık özelliği kaydında sağlanan meta verileri geçersiz kılarak. Özel durum oluşturmamak için salt okunur bağımlılık özelliğini geçirmeniz DependencyPropertyKey gerekir.

public:
 void OverrideMetadata(Type ^ forType, System::Windows::PropertyMetadata ^ typeMetadata, System::Windows::DependencyPropertyKey ^ key);
public void OverrideMetadata (Type forType, System.Windows.PropertyMetadata typeMetadata, System.Windows.DependencyPropertyKey key);
member this.OverrideMetadata : Type * System.Windows.PropertyMetadata * System.Windows.DependencyPropertyKey -> unit
Public Sub OverrideMetadata (forType As Type, typeMetadata As PropertyMetadata, key As DependencyPropertyKey)

Parametreler

forType
Type

Bu bağımlılık özelliğinin devralındığı ve sağlanan alternatif meta verilerin uygulanacağı tür.

typeMetadata
PropertyMetadata

Geçersiz kılma türündeki bağımlılık özelliğine uygulanacak meta veriler.

key
DependencyPropertyKey

Salt okunur bağımlılık özelliğinin erişim anahtarı.

Açıklamalar

Bu imza, salt okunur bağımlılık özellik tanımlayıcısı (DependencyPropertyKey) yöntemi için temel uygulama sağlar. Okuma-yazma bağımlılık özelliği için meta verileri geçersiz kılınıyorsa kullanın OverrideMetadata(Type, PropertyMetadata).

Özellik sistemi bağımlılık özelliğini kullanmadan önce bağımlılık özelliği meta verileri geçersiz kılınmalıdır. Bu, bağımlılık özelliğini kaydeden sınıf için belirli nesnelerin oluşturulduğu zamana eşitlenir. çağrısı OverrideMetadata yalnızca bu yöntemin parametresi olarak forType kendisini sağlayan türün statik oluşturucuları içinde veya benzer bir örnekleme yoluyla gerçekleştirilmelidir. Sahip türünün örnekleri mevcut olduktan sonra meta verileri değiştirmeye çalışmak özel durum oluşturmaz, ancak özellik sisteminde tutarsız davranışlara neden olur.

Bu yöntemle belirli bir türetilmiş sınıf geçersiz kılma için meta veriler oluşturulduktan sonra, bu türetilmiş sınıftaki meta verileri geçersiz kılma girişimleri bir özel durum oluşturur.

Sağlanan meta veriler, temel sahipte mevcut olduğundan bağımlılık özelliğinin özellik meta verileriyle birleştirilir. Özgün temel meta verilerde belirtilen tüm özellikler kalıcı olur; yalnızca yeni meta verilerde özel olarak değiştirilen özellikler temel meta verilerin özelliklerini geçersiz kılar. gibi DefaultValue bazı özellikler, yeni meta verilerde belirtilirse değiştirilir. gibi PropertyChangedCallbackdiğerleri birleştirilir. Birleştirme davranışı, geçersiz kılma için kullanılan özellik meta veri türüne bağlıdır. Ayrıntılar için bkz . Bağımlılık Özelliği Meta Verileri ve Çerçeve Özellik Meta Verileri.

Şunlara uygulanır