DependencyPropertyKey Class

Definition

Salt okuma bağımlılığı özelliğine sınırlı yazma erişimi için bir bağımlılık özelliği tanımlayıcısı sağlar.Provides a dependency property identifier for limited write access to a read-only dependency property.

public ref class DependencyPropertyKey sealed
public sealed class DependencyPropertyKey
type DependencyPropertyKey = class
Public NotInheritable Class DependencyPropertyKey
Inheritance
DependencyPropertyKey

Examples

Aşağıdaki örnek, salt okunurdur bir bağımlılık özelliği kaydeder ve aynı zamanda bu anahtarı diğer sınıf üyelerinde iki amaçla kullanır: Get "sarmalayıcı" uygulama ve değeri diğer özellik değerlerinin hesaplamalarına göre ayarlayan korumalı bir belirleme işlemi için tanımlayıcı olarak.The following example registers a read-only dependency property, and also uses the key for two purposes in other class members: implementing the get "wrapper", and as the identifier for a protected determination operation that sets the value based on calculations of other property values.

internal static readonly DependencyPropertyKey AquariumSizeKey = DependencyProperty.RegisterReadOnly(
  "AquariumSize",
  typeof(double),
  typeof(Aquarium),
  new PropertyMetadata(double.NaN)
);
public static readonly DependencyProperty AquariumSizeProperty =
  AquariumSizeKey.DependencyProperty;
public double AquariumSize
{
  get { return (double)GetValue(AquariumSizeProperty); }
}
Friend Shared ReadOnly AquariumSizeKey As DependencyPropertyKey = DependencyProperty.RegisterReadOnly("AquariumSize", GetType(Double), GetType(Aquarium), New PropertyMetadata(Double.NaN))
Public Shared ReadOnly AquariumSizeProperty As DependencyProperty = AquariumSizeKey.DependencyProperty
Public ReadOnly Property AquariumSize() As Double
    Get
        Return CDbl(GetValue(AquariumSizeProperty))
    End Get
End Property

Remarks

DependencyPropertyKey örnekleri, RegisterReadOnly veya RegisterAttachedReadOnlyyöntemler kullanılarak bağımlılık özelliği kayıt çağrısının dönüş değeri olarak alınır.DependencyPropertyKey instances are obtained as the return value of a dependency property registration call using the methods RegisterReadOnly or RegisterAttachedReadOnly.

Bağımlılık özelliğini kaydeden türler, sınıf mantığının bir parçası olarak özelliğin değerini ayarlayasağlayan SetValue ve ClearValue çağrılarında DependencyPropertyKey kullanabilir.The types that register a dependency property can use the DependencyPropertyKey in calls to SetValue and ClearValue that adjust the property's value as part of class logic. Anahtarın erişim düzeyiyle izin verildiğinde ilgili sınıflar anahtarı ve bağımlılık özelliğini de kullanabilir.If permitted by the access level of the key, related classes can use the key and the dependency property also. Örneğin, anahtarı iç olarak bildirebilir ve aynı derleme içindeki diğer türler de bu bağımlılık özelliğini ayarlayabilir.For instance, you can declare the key as internal, and other types within the same assembly can also set that dependency property.

Salt okuma bağımlılığı özelliği kaydı tarafından döndürülen DependencyPropertyKey ortak hale getirilmemelidir, çünkü anahtarın kullanıma sunulması özelliği ayarlanabilir hale getirir, bu nedenle bunu salt okunurdur bir bağımlılık özelliği olarak kaydetme noktasını erteleyerek.The DependencyPropertyKey returned by read-only dependency property registration should not be made public, because exposing the key makes the property settable, thus defeating the point of registering it as a read-only dependency property. Ayrıca, anahtarı göstermek, kullanılabilir bağımlılık özelliği davranışları ve bu hatalı sınıf tasarımı olan ortak dil çalışma zamanı (CLR)common language runtime (CLR) Özellik sarmalayıcı uygulamaları arasında uyuşmazlık oluşmasına neden olur.Also, exposing the key causes a mismatch between the available dependency property behaviors and its ortak dil çalışma zamanı (CLR)common language runtime (CLR) property wrapper implementations, which is bad class design.

Anahtarın kendisini göstermek yerine, DependencyPropertyKey DependencyProperty değerini sınıfınıza bir public static readonlyDependencyProperty olarak kullanıma sunmalısınız.Instead of exposing the key itself, you should instead expose the DependencyProperty value of the DependencyPropertyKey as a public static readonlyDependencyProperty on your class. Bu, özelliğin yerel olarak ayarlanan değerleri numaralandırma gibi belirli özellik sistem işlemleri için geçerli bir bağımlılık özelliği tanımlayıcısı döndürmesini sağlar.This enables the property to return a valid dependency property identifier for certain property system operations such as enumerating locally set values. Ancak, bu nedenle edinilen tanımlayıcı pek çok özellik sistemi işlemi için DependencyProperty tam özelliklerine sahip değildir.However, the identifier thus obtained does not have the full capabilities of a DependencyProperty for many property system operations.

Properties

DependencyProperty

Bu özelleştirilmiş salt okunurdur bağımlılık özelliği tanımlayıcısı ile ilişkili bağımlılık özelliği tanımlayıcısını alır.Gets the dependency property identifier associated with this specialized read-only dependency property identifier.

Methods

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

Varsayılan karma işlevi olarak işlev görür.Serves as the default hash function.

(Inherited from Object)
GetType()

Geçerli örneğin Type alır.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.Creates a shallow copy of the current Object.

(Inherited from Object)
OverrideMetadata(Type, PropertyMetadata)

Bu bağımlılık özelliği tanımlayıcısı tarafından temsil edilen salt okunurdur bir bağımlılık özelliğinin meta verilerini geçersiz kılar.Overrides the metadata of a read-only dependency property that is represented by this dependency property identifier.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.Returns a string that represents the current object.

(Inherited from Object)

Applies to

See also