Condividi tramite


DependencyPropertyKey.DependencyProperty Proprietà

Definizione

Ottiene l'identificatore della proprietà di dipendenza associato a questo identificatore specializzato della proprietà di dipendenza di sola lettura.

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

Valore della proprietà

Identificatore della proprietà di dipendenza pertinente.

Esempio

Nell'esempio seguente viene chiamato DependencyProperty per esporre l'identificatore di DependencyProperty (AquariumGraphicProperty) per la proprietà di dipendenza AquariumGraphic di sola lettura in una classe . L'esempio mostra anche la creazione DependencyPropertyKey (come membro interno) e la funzione di accesso get per 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

Commenti

Il valore DependencyProperty consente all'identificatore di una proprietà di sola lettura di partecipare alle operazioni comuni del sistema di proprietà usando alcune delle stesse interfacce usate per le proprietà di dipendenza di lettura/scrittura.

Per implementare la funzione di accesso alla proprietà get per una proprietà di dipendenza di sola lettura, è necessario creare ed esporre un identificatore DependencyProperty nella classe. Questo serve due scopi:

  • La propria classe richiede l'identificatore DependencyProperty per implementare la funzione di accesso get per il wrapper della proprietà. Usare il DependencyProperty come parametro per la chiamata GetValue che implementa la funzione di accesso get.

  • DependencyProperty identificatori espongono la proprietà di dipendenza al sistema di proprietà in modo che altri metodi che si basano sui metadati possano accedervi in un modulo standard. Ad esempio, se è stato chiamato GetLocalValueEnumerator in alcuni DependencyObject ed è stata ottenuta un'enumerazione di proprietà del set locale (valori e identificatori), l'identificatore restituito per una proprietà di dipendenza di sola lettura sarà il valore DependencyProperty anziché la chiave. L'esposizione di un identificatore di DependencyProperty non aumenta in alcun modo la sicurezza della proprietà di dipendenza di sola lettura, ma solo operazioni che coinvolgono la proprietà più scomoda sia per le classi derivate successive che per le istanze di classe.

Per esporre l'identificatore DependencyProperty nella classe, chiamare DependencyProperty direttamente sulla chiave. Usare questo valore per creare un identificatore di public static readonlyDependencyProperty nella classe , che paralleli all'DependencyPropertyKey.

Si applica a

Vedi anche