Bagikan melalui


DependencyPropertyKey.DependencyProperty Properti

Definisi

Mendapatkan pengidentifikasi properti dependensi yang terkait dengan pengidentifikasi properti dependensi baca-saja khusus ini.

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

Nilai Properti

Pengidentifikasi properti dependensi yang relevan.

Contoh

Contoh berikut memanggil DependencyProperty untuk mengekspos pengidentifikasi DependencyProperty (AquariumGraphicProperty) untuk properti dependensi baca-saja AquariumGraphic pada kelas. Contohnya juga menunjukkan pembuatan DependencyPropertyKey (sebagai anggota internal) dan mendapatkan aksesor untuk 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

Keterangan

Nilai DependencyProperty memungkinkan pengidentifikasi properti baca-saja untuk berpartisipasi dalam operasi sistem properti umum menggunakan beberapa antarmuka yang sama seperti yang digunakan untuk properti dependensi baca-tulis.

Untuk mengimplementasikan aksesor properti get untuk properti dependensi baca-saja, Anda harus membuat dan mengekspos pengidentifikasi DependencyProperty di kelas Anda. Ini melayani dua tujuan:

  • Kelas Anda sendiri memerlukan pengidentifikasi DependencyProperty untuk mengimplementasikan aksesor get untuk pembungkus properti. Anda menggunakan DependencyProperty sebagai parameter untuk panggilan GetValue yang mengimplementasikan get accessor.

  • DependencyProperty pengidentifikasi mengekspos properti dependensi Anda ke sistem properti sehingga metode lain yang mengandalkan metadata dapat mengaksesnya dalam bentuk standar. Misalnya, jika Anda memanggil GetLocalValueEnumerator pada beberapa DependencyObject dan mendapatkan enumerasi properti yang ditetapkan secara lokal (nilai dan pengidentifikasi) pengidentifikasi yang dikembalikan untuk properti dependensi baca-saja akan menjadi nilai DependencyProperty Anda daripada kunci. Tidak mengekspos pengidentifikasi DependencyProperty tidak meningkatkan keamanan properti dependensi baca-saja Anda dengan cara apa pun, itu hanya membuat operasi yang melibatkan properti Anda lebih canggung baik untuk kelas turunan dan instans kelas berikutnya.

Untuk mengekspos pengidentifikasi DependencyProperty di kelas, Anda memanggil DependencyProperty langsung di kunci Anda. Gunakan nilai ini untuk membuat pengidentifikasi public static readonlyDependencyProperty pada kelas , yang paralel dengan DependencyPropertyKey.

Berlaku untuk

Lihat juga