DependencyPropertyKey.DependencyProperty Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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
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 .