Partager via


DependencyPropertyKey.DependencyProperty Propriété

Définition

Obtient l’identificateur de propriété de dépendance associé à cet identificateur de propriété de dépendance en lecture seule spécialisé.

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

Valeur de propriété

Identificateur de propriété de dépendance approprié.

Exemples

L’exemple suivant appelle DependencyProperty pour exposer l’identificateur DependencyProperty (AquariumGraphicProperty) pour la propriété de dépendance en lecture seule AquariumGraphic sur une classe. L’exemple montre également la création DependencyPropertyKey (en tant que membre interne) et l’accesseur get pour 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

Remarques

La valeur DependencyProperty permet à un identificateur de propriété en lecture seule de participer aux opérations courantes du système de propriétés à l’aide de certaines des mêmes interfaces que celles utilisées pour les propriétés de dépendance en lecture-écriture.

Pour implémenter l’accesseur get property pour une propriété de dépendance en lecture seule, vous devez créer et exposer un identificateur DependencyProperty sur votre classe. Cela sert à deux fins :

  • Votre propre classe a besoin de l’identificateur DependencyProperty pour implémenter l’accesseur get pour le wrapper de propriété. Vous utilisez le DependencyProperty comme paramètre pour l’appel GetValue qui implémente l’accesseur get.

  • DependencyProperty identificateurs exposent votre propriété de dépendance au système de propriétés de sorte que d’autres méthodes qui s’appuient sur des métadonnées puissent y accéder dans un formulaire standard. Par exemple, si vous avez appelé GetLocalValueEnumerator sur certains DependencyObject et obtenu une énumération des propriétés définies localement (valeurs et identificateurs), l’identificateur retourné pour une propriété de dépendance en lecture seule serait votre valeur DependencyProperty plutôt que la clé. L’exposition d’un identificateur de DependencyProperty n’augmente pas la sécurité de votre propriété de dépendance en lecture seule de quelque manière que ce soit, cela rend simplement les opérations qui impliquent votre propriété plus maladroit pour les classes dérivées et les instances de classe suivantes.

Pour exposer l’identificateur DependencyProperty sur votre classe, vous appelez DependencyProperty directement sur votre clé. Utilisez cette valeur pour créer un identificateur public static readonlyDependencyProperty sur la classe, qui met en parallèle la DependencyPropertyKey.

S’applique à

Voir aussi