DependencyPropertyKey.DependencyProperty Właściwość

Definicja

Pobiera identyfikator właściwości zależności skojarzony z tym wyspecjalizowanym identyfikatorem właściwości zależności tylko do odczytu.

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

Wartość właściwości

DependencyProperty

Odpowiedni identyfikator właściwości zależności.

Przykłady

W poniższym przykładzie wywołania DependencyProperty uwidocznić DependencyProperty identyfikator (AquariumGraphicProperty) dla właściwości zależności tylko do AquariumGraphic odczytu w klasie. W przykładzie przedstawiono DependencyPropertyKey również tworzenie (jako element członkowski wewnętrzny) i metodę pobierania dla elementu 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

Uwagi

Wartość DependencyProperty umożliwia identyfikatorowi właściwości tylko do odczytu, aby uczestniczyć w typowych operacjach systemu właściwości przy użyciu niektórych z tych samych interfejsów, które były używane dla właściwości zależności odczytu i zapisu.

Aby zaimplementować metodę dostępu właściwości get dla właściwości zależności tylko do odczytu, należy utworzyć i uwidocznić DependencyProperty identyfikator klasy. Służy to do dwóch celów:

  • Twoja własna klasa potrzebuje identyfikatora DependencyProperty , aby zaimplementować metodę get dla otoki właściwości. Należy użyć DependencyProperty jako parametru GetValue dla wywołania implementujące metodę get accessor.

  • DependencyProperty identyfikatory uwidaczniają właściwość zależności do systemu właściwości, tak aby inne metody oparte na metadanych mogły uzyskiwać do niej dostęp w postaci standardowej. Na przykład w przypadku wywołania GetLocalValueEnumerator niektórych DependencyObject i uzyskania wyliczenia właściwości zestawu lokalnego (wartości i identyfikatory) identyfikator zwrócony dla właściwości zależności tylko do odczytu będzie DependencyProperty twoją wartością, a nie kluczem. Nie uwidacznianie DependencyProperty identyfikatora nie zwiększa bezpieczeństwa właściwości zależności tylko do odczytu w żaden sposób, powoduje tylko, że operacje, które obejmują właściwość bardziej niezręczne zarówno dla kolejnych klas pochodnych, jak i wystąpień klas.

Aby uwidocznić DependencyProperty identyfikator klasy, należy wywołać go DependencyProperty bezpośrednio w kluczu. Użyj tej wartości, aby utworzyć public static readonly DependencyProperty identyfikator klasy, która jest równoległa do DependencyPropertyKeyklasy .

Dotyczy

Zobacz też