DependencyPropertyKey.DependencyProperty Eigenschaft

Definition

Ruft den Bezeichner einer Abhängigkeitseigenschaft ab, der diesem Bezeichner einer spezialisierten schreibgeschützten Abhängigkeitseigenschaft zugeordnet ist.

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

DependencyProperty

Der relevante Bezeichner einer Abhängigkeitseigenschaft.

Beispiele

Im folgenden Beispiel wird aufgerufen DependencyProperty , um den DependencyProperty Bezeichner (AquariumGraphicProperty) für die AquariumGraphic schreibgeschützte Abhängigkeitseigenschaft einer Klasse verfügbar zu machen. Das Beispiel zeigt auch die DependencyPropertyKey Erstellung (als internes Mitglied) und den Get-Accessor für 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

Der DependencyProperty Wert ermöglicht den Bezeichner einer schreibgeschützten Eigenschaft, an allgemeinen Eigenschaftensystemvorgängen teilzunehmen, indem einige der gleichen Schnittstellen verwendet werden, die für Lese-Schreib-Abhängigkeitseigenschaften verwendet werden.

Um den Get-Eigenschaftszugriff für eine schreibgeschützte Abhängigkeitseigenschaft zu implementieren, sollten Sie einen DependencyProperty Bezeichner für Ihre Klasse erstellen und verfügbar machen. Dies erfüllt zweierlei Zwecke:

  • Ihre eigene Klasse benötigt den DependencyProperty Bezeichner, um den Get-Accessor für den Eigenschaftenwrapper zu implementieren. Sie verwenden den DependencyProperty Parameter als Parameter für den Aufruf, der GetValue den Get-Accessor implementiert.

  • DependencyProperty Bezeichner machen Ihre Abhängigkeitseigenschaft dem Eigenschaftensystem verfügbar, sodass andere Methoden, die auf Metadaten basieren, in einem Standardformular darauf zugreifen können. Wenn Sie beispielsweise einige DependencyObject aufrufen GetLocalValueEnumerator und eine Aufzählung von lokal festgelegten Eigenschaften (Werten und Bezeichnern) erhalten haben, wäre der für eine schreibgeschützte Abhängigkeitseigenschaft zurückgegebene Bezeichner ihr DependencyProperty Wert anstelle des Schlüssels. Wenn sie keinen DependencyProperty Bezeichner verfügbar machen, wird die Sicherheit Ihrer schreibgeschützten Abhängigkeitseigenschaft in keiner Weise erhöht, es macht nur Vorgänge, die Ihre Eigenschaft sowohl für nachfolgende abgeleitete Klassen als auch für Klasseninstanzen ungünstiger machen.

Um den DependencyProperty Bezeichner für Ihre Klasse verfügbar zu machen, rufen Sie direkt ihren Schlüssel auf DependencyProperty . Verwenden Sie diesen Wert, um einen public static readonly DependencyProperty Bezeichner für die Klasse zu erstellen, die parallel zur DependencyPropertyKey.

Gilt für

Siehe auch