DependencyPropertyKey.DependencyProperty DependencyPropertyKey.DependencyProperty DependencyPropertyKey.DependencyProperty DependencyPropertyKey.DependencyProperty Property

Definition

Ruft den Bezeichner einer Abhängigkeitseigenschaft ab, der diesem Bezeichner einer spezialisierten schreibgeschützten Abhängigkeitseigenschaft zugeordnet ist.Gets the dependency property identifier associated with this specialized read-only dependency property identifier.

public:
 property System::Windows::DependencyProperty ^ DependencyProperty { System::Windows::DependencyProperty ^ get(); };
public System.Windows.DependencyProperty DependencyProperty { get; }
member this.DependencyProperty : System.Windows.DependencyProperty
Public ReadOnly Property DependencyProperty As DependencyProperty

Eigenschaftswert

Der relevante Bezeichner einer Abhängigkeitseigenschaft.The relevant dependency property identifier.

Beispiele

Im folgenden Beispiel wird DependencyProperty verfügbar machen die DependencyProperty Bezeichner (AquariumGraphicProperty) für die AquariumGraphic schreibgeschützte Abhängigkeitseigenschaft auf einer Klasse.The following example calls DependencyProperty to expose the DependencyProperty identifier (AquariumGraphicProperty) for the AquariumGraphic read-only dependency property on a class. Das Beispiel zeigt auch die DependencyPropertyKey (als interner Member) und die Get-Accessor für AquariumGraphic.The example also shows the DependencyPropertyKey creation (as an internal member) and the get accessor for AquariumGraphic.

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

Hinweise

Die DependencyProperty -Wert ermöglicht eine schreibgeschützte Eigenschaft Bezeichner Teilnahme an allgemeinen Operationen des Eigenschaftensystems unter Verwendung der gleichen Schnittstellen auch verwendet für Abhängigkeitseigenschaften mit Lese-/ Schreibzugriff.The DependencyProperty value enables a read-only property's identifier to participate in common property system operations using some of the same interfaces as used for read-write dependency properties.

Um den Get-Accessor für eine schreibgeschützte Abhängigkeitseigenschaft implementieren, sollten Sie erstellen und Bereitstellen einer DependencyProperty -Bezeichner für die Klasse.In order to implement the get property accessor for a read-only dependency property, you should create and expose a DependencyProperty identifier on your class. Bei diesem Verfahren werden zwei Ziele verfolgt:This serves two purposes:

  • Die eigene Klasse erfordert die DependencyProperty Bezeichner, um den Get-Accessor für den Eigenschaftenwrapper zu implementieren.Your own class needs the DependencyProperty identifier in order to implement the get accessor for the property wrapper. Sie verwenden die DependencyProperty als Parameter für die GetValue -Aufruf, den Get-Accessor implementiert.You use the DependencyProperty as a parameter for the GetValue call that implements the get accessor.

  • DependencyProperty Bezeichner Ihre Abhängigkeitseigenschaft im Eigenschaftensystem verfügbar machen, sodass andere Methoden, die Metadaten benötigen es in einem Standardformat zugreifen können.DependencyProperty identifiers expose your dependency property to the property system such that other methods that rely on metadata can access it in a standard form. Z. B. bei einem Aufruf GetLocalValueEnumerator auf einigen DependencyObject , sondern lokal festgelegte Eigenschaften ("Werte" und "Bezeichner") einer Enumeration den Bezeichner für eine schreibgeschützte Abhängigkeitseigenschaft wäre zurückgegebene Ihre DependencyProperty Wert anstelle des Schlüssels.For instance, if you called GetLocalValueEnumerator on some DependencyObject and obtained an enumeration of locally set properties (values and identifiers) the identifier returned for a read-only dependency property would be your DependencyProperty value rather than the key. Nicht verfügbar machen eine DependencyProperty Bezeichner nicht erhöht die Sicherheit in irgendeiner Weise Ihre schreibgeschützte Abhängigkeitseigenschaft, so kann Vorgänge, die die Eigenschaft, die sowohl für die folgenden abgeleiteten Klassen und Klasseninstanzen umständlicher betreffen.Not exposing a DependencyProperty identifier does not increase the security of your read-only dependency property in any way, it just makes operations that involve your property more awkward both for subsequent derived classes and class instances.

Um verfügbar zu machen die DependencyProperty -Bezeichner für die Klasse, rufen Sie DependencyProperty direkt für den Schlüssel.To expose the DependencyProperty identifier on your class, you call DependencyProperty directly on your key. Verwenden Sie diesen Wert zum Erstellen einer public static readonly DependencyProperty Bezeichner für die Klasse, die gleicht der DependencyPropertyKey.Use this value to create a public static readonlyDependencyProperty identifier on the class, which parallels the DependencyPropertyKey.

Gilt für:

Siehe auch