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

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

Przykłady

Poniższy przykład wywołuje metodę DependencyProperty uwidaczniania identyfikatora DependencyProperty (AquariumGraphicProperty) dla AquariumGraphic właściwości zależności tylko do odczytu w klasie. W przykładzie DependencyPropertyKey pokazano również tworzenie (jako element członkowski wewnętrzny) i metodę pobierania dla metody 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 uczestnictwo w typowych operacjach systemowych właściwości przy użyciu niektórych z tych samych interfejsów, które są 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 w klasie. Służy to dwóm celom:

  • Własna klasa wymaga identyfikatora DependencyProperty w celu zaimplementowania metody get accessor dla otoki właściwości. Należy użyć parametru DependencyProperty jako dla wywołania GetValue , które implementuje metodę get accessor.

  • DependencyProperty identyfikatory uwidaczniają właściwość zależności systemowi właściwości, tak aby inne metody korzystające z metadanych mogły uzyskać do niej dostęp w postaci standardowej. Na przykład jeśli wywołano GetLocalValueEnumerator niektóre DependencyObject właściwości i uzyskano wyliczenie 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 twoją DependencyProperty wartością, a nie kluczem. Nie uwidacznianie identyfikatora DependencyProperty nie zwiększa bezpieczeństwa właściwości zależności tylko do odczytu w żaden sposób. Powoduje to, że operacje, które obejmują właściwość, są bardziej niezręczne zarówno dla kolejnych klas pochodnych, jak i wystąpień klas.

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

Dotyczy

Zobacz też