FrameworkPropertyMetadata.Inherits Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan atau menetapkan nilai yang menunjukkan apakah nilai properti dependensi dapat diwariskan.
public:
property bool Inherits { bool get(); void set(bool value); };
public bool Inherits { get; set; }
member this.Inherits : bool with get, set
Public Property Inherits As Boolean
Nilai Properti
true
jika nilai properti dapat diwariskan; jika tidak, false
. Defaultnya adalah false
.
Pengecualian
Metadata telah diterapkan ke operasi properti dependensi, sehingga metadata disegel dan properti metadata tidak dapat diatur.
Contoh
Contoh berikut mendapatkan metadata default dari berbagai bidang properti dependensi, meminta nilai berbagai FrameworkPropertyMetadata properti di dalamnya, dan menggunakan informasi untuk mengisi tabel untuk mengimplementasikan "browser metadata".
pm = dp.GetMetadata(dp.OwnerType);
pm = dp.GetMetadata(dp.OwnerType)
FrameworkPropertyMetadata fpm = pm as FrameworkPropertyMetadata;
if (fpm!=null) {
AffectsArrange.Text = (fpm.AffectsArrange) ? "Yes" : "No";
AffectsMeasure.Text = (fpm.AffectsMeasure) ? "Yes" : "No";
AffectsRender.Text = (fpm.AffectsRender) ? "Yes" : "No";
Inherits.Text = (fpm.Inherits) ? "Yes" : "No";
IsDataBindingAllowed.Text = (fpm.IsDataBindingAllowed) ? "Yes" : "No";
BindsTwoWayByDefault.Text = (fpm.BindsTwoWayByDefault) ? "Yes" : "No";
}
Dim fpm As FrameworkPropertyMetadata = TryCast(pm, FrameworkPropertyMetadata)
If fpm IsNot Nothing Then
AffectsArrange.Text = If((fpm.AffectsArrange), "Yes", "No")
AffectsMeasure.Text = If((fpm.AffectsMeasure), "Yes", "No")
AffectsRender.Text = If((fpm.AffectsRender), "Yes", "No")
[Inherits].Text = If((fpm.Inherits), "Yes", "No")
IsDataBindingAllowed.Text = If((fpm.IsDataBindingAllowed), "Yes", "No")
BindsTwoWayByDefault.Text = If((fpm.BindsTwoWayByDefault), "Yes", "No")
Keterangan
Pewarisan nilai properti adalah fitur sistem properti WPF pada tingkat kerangka kerja WPF, di mana properti dependensi tertentu dapat diatur secara lokal pada elemen di atau dekat akar pohon elemen XAML dan kemudian memiliki nilainya yang diwarisi oleh semua elemen dalam pohon logis elemen anak yang juga memiliki properti tersebut. Pewarisan nilai properti tidak diaktifkan secara default, dan mengaktifkannya memang memiliki beberapa implikasi performa. Untuk detailnya, lihat Pewarisan Nilai Properti.
Catatan
Meskipun pewarisan nilai properti mungkin tampak berfungsi untuk properti dependensi yang tidak terpasang, perilaku pewarisan untuk properti yang tidak terpasang melalui pembagian objek-objek tertentu di pohon runtime tidak terdefinisi. Selalu gunakan RegisterAttached untuk mendaftarkan properti tempat Anda menentukan Inherits dalam metadata.
Properti pada kelas turunan PropertyMetadata biasanya didefinisikan dalam model objek sebagai baca-tulis. Ini agar dapat disesuaikan setelah inisialisasi instans. Namun, setelah metadata digunakan sebagai bagian dari panggilan ke Register, , AddOwneratau OverrideMetadata, sistem properti akan menyegel instans metadata dan properti yang menyampaikan spesifikasi metadata sekarang dianggap tidak dapat diubah. Mencoba mengatur properti ini setelah IsSealed ada true
pada instans metadata ini akan menimbulkan pengecualian.
Penggunaan Teks XAML
Anggota kelas ini biasanya tidak digunakan dalam XAML.