DependencyProperty.AddOwner Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Zaten bir türe kaydedilmiş bir bağımlılık özelliğinin sahibi olarak başka bir tür ekler.
Aşırı Yüklemeler
AddOwner(Type) |
Önceden kaydedilmiş bir bağımlılık özelliğinin sahibi olarak başka bir tür ekler. |
AddOwner(Type, PropertyMetadata) |
Daha önce kaydedilmiş bir bağımlılık özelliğinin sahibi olarak başka bir tür ekler ve sağlanan sahip türünde var olacağı için bağımlılık özelliği için bağımlılık özelliği meta verileri sağlar. |
AddOwner(Type)
Önceden kaydedilmiş bir bağımlılık özelliğinin sahibi olarak başka bir tür ekler.
public:
System::Windows::DependencyProperty ^ AddOwner(Type ^ ownerType);
public System.Windows.DependencyProperty AddOwner (Type ownerType);
member this.AddOwner : Type -> System.Windows.DependencyProperty
Public Function AddOwner (ownerType As Type) As DependencyProperty
Parametreler
- ownerType
- Type
Bu bağımlılık özelliğinin sahibi olarak eklenecek tür.
Döndürülenler
Bağımlılık özelliğini tanımlayan özgün DependencyProperty tanımlayıcıya başvuru. Bu tanımlayıcı, alan olarak public static readonly
ekleme sınıfı tarafından kullanıma sunulmalıdır.
Açıklamalar
Bu yöntem, özellik sisteminin başlangıçta belirli bir bağımlılık özelliğini kaydetmeyen bir türdeki bağımlılık özelliğini tanımasını sağlar.
Genellikle, AddOwner yönetilen sınıf devralma yoluyla bu bağımlılık özelliğini henüz kullanıma sunmayan sınıflara bağımlılık özellikleri eklemek için kullanılır (sınıf devralma sarmalayıcı özelliklerinin türetilmiş sınıf tarafından devralınmasına neden olur ve bu nedenle zaten bağımlılık özelliğine genel üyeler tablosu erişimi sağlar). AddOwner özellik sisteminin başlangıçta bu bağımlılık özelliğini kaydetmeyen bir türdeki bağımlılık özelliğini tanımasını sağlar.
Bu imza meta verilerin belirtilmesine izin vermiyor. Bu yöntemi kullandığınızda, meta veriler yeni DependencyProperty ve sahip türü için otomatik olarak oluşturulur. Otomatik olarak oluşturulan meta veriler, bu özelliğin tanımlandığı tüm temel türlerden birleştirilmiş meta verilerin sonucudur. Birleştirilmiş meta veriler yoksa özelliği için varsayılan meta veriler kullanılır. özelliği yöntemi kullanılarak RegisterAttached kaydedilirse, varsayılan meta veriler çağrıldığında RegisterAttached oluşturulan meta verilerle aynıdır. Aksi takdirde, PropertyMetadata özelliği özellik türünün varsayılan değerine ayarlanmışken nesnesi oluşturulur DefaultValue ve diğer tüm özellikleri PropertyMetadata olarak null
ayarlanır. Sağlanan türe AddOwner(Type, PropertyMetadata) eklendiği gibi bağımlılık özelliğinin sürümü için meta veri sağlamak istiyorsanız imzayı kullanın.
Bu yöntemin dönüş değeri genellikle bağımlılık özelliği tanımlayıcısını depolayarak bağımlılık özelliğini bildirmek ve kullanıma açmak için kullanılır. Özellikle ekleme sahip sınıfında olduğu gibi, bağımlılık özelliğine karşı özellik sistemi API'lerini çağırmak istiyorsanız, tanımlayıcı bağımlılık özelliğine erişim sağlar. Benzer işlevselliği göstermek için hem özgün sahip hem de eklenen sahip için aynı özellik adı kullanılmalıdır. yönteminin DependencyPropertyAddOwner dönüş değerini kullanarak bağımlılık özelliği tanımlayıcısını tanımlamanız ve ayrıca kullanarak AddOwnertürlere eklenen bağımlılık özellikleri için CLR özellik sarmalayıcılarını bildirmeniz gerekir.
AddOwner Wpf içinde bildirilen bağımlılık özellikleri oluşturulurken yukarıda önerilen metodoloji kullanılır. Örneğin, hem hem de BorderControl benzer işlevlere sahip bir BorderBrush
bağımlılık özelliği tanımlayın.
Control
BorderBrush
, özgün sahibine Border ve kayıtlı BorderBrushProperty bağımlılık özelliği identifer'ine göre çağırarak AddOwner özelliğini özellik sistemine tanımlar. Dönüş AddOwner değeri daha sonra eklenen sahipte bu özellik için yeni bir statik DependencyProperty alan (BorderBrushProperty) oluşturmak için kullanılır ve bir BorderBrush
özellik sarmalayıcı da bildirilir.
Şunlara uygulanır
AddOwner(Type, PropertyMetadata)
Daha önce kaydedilmiş bir bağımlılık özelliğinin sahibi olarak başka bir tür ekler ve sağlanan sahip türünde var olacağı için bağımlılık özelliği için bağımlılık özelliği meta verileri sağlar.
public:
System::Windows::DependencyProperty ^ AddOwner(Type ^ ownerType, System::Windows::PropertyMetadata ^ typeMetadata);
public System.Windows.DependencyProperty AddOwner (Type ownerType, System.Windows.PropertyMetadata typeMetadata);
member this.AddOwner : Type * System.Windows.PropertyMetadata -> System.Windows.DependencyProperty
Public Function AddOwner (ownerType As Type, typeMetadata As PropertyMetadata) As DependencyProperty
Parametreler
- ownerType
- Type
Bu bağımlılık özelliğinin sahibi olarak eklenecek tür.
- typeMetadata
- PropertyMetadata
Sağlanan türdeki bağımlılık özelliğini niteleyen meta veriler.
Döndürülenler
Bağımlılık özelliğini tanımlayan özgün DependencyProperty tanımlayıcıya başvuru. Bu tanımlayıcı, alan olarak public static readonly
ekleme sınıfı tarafından kullanıma sunulmalıdır.
Açıklamalar
Bu yöntem, özellik sisteminin başlangıçta belirli bir bağımlılık özelliğini kaydetmeyen bir türdeki bağımlılık özelliğini tanımasını sağlar.
Bu yöntemin dönüş değeri, özellikle ekleme sahip sınıfında mevcut olduğu gibi bağımlılık özelliğini bildirmek ve kullanıma açmak için kullanılır. Genellikle, benzer işlevselliği göstermek için hem özgün sahip hem de eklenen sahip için aynı özellik adı kullanılmalıdır. kullanarak türlere eklenen bağımlılık özellikleri için tanımlayıcıların yanı sıra yeni CLR özellik sarmalayıcılarını da kullanıma sunmanın iyi bir uygulama olduğunu unutmayın AddOwner.
AddOwner WPF içinde bildirilen API'ler oluşturulurken yukarıda önerilen metodoloji kullanılır. Örneğin, hem hem de BorderControl benzer işlevlere sahip bir BorderBrush
bağımlılık özelliği tanımlayın.
Control
BorderBrush
, özgün sahibini Border ve kayıtlı BorderBrushProperty bağımlılık özelliği identifer'ını çağırarak AddOwner özelliğini özellik sistemine tanımlar. Dönüş AddOwner değeri daha sonra eklenen sahipte bu özellik için statik DependencyProperty alan (BorderBrushProperty) oluşturmak için kullanılır ve bir BorderBrush
özellik sarmalayıcı da bildirilir.
Eklenen sahibin bağımlılık özelliği tanımlayıcısı gibi GetValueişlemler için kullanılmalıdır. Ancak, wer'nin farklı meta verilere sahip olarak eklediği sınıfın türlerini veya örneklerini içeren türe özgü işlemler yine de beklenen sonuçları döndürür. Özgün (eklenen sahibin değil) bağımlılık özelliği tanımlayıcısı veya GetMetadatagibi GetValue yöntemlere yapılan çağrılarda belirtilse bile bu durum geçerlidir. Eklenen sahibin meta verileri çağrının AddOwner kendisi tarafından devam ettirilir; yalnızca sahip sınıfı tanımlayıcı alanı eklenerek başvurulması gerekmez. Bununla birlikte, tanımlayıcıyı ve yeni CLR özellik sarmalayıcılarını kullanarak AddOwnertürlere eklenen bağımlılık özellikleri için kullanıma sunmanız iyi bir uygulamadır, çünkü bunu yapamamak özelliklerinizin CLR ve XAML gösterimleri arasında eşitsizlik 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 DefaultValuebazı ö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.