Share via


PropertyMetadata Konstruktor

Definisi

Overload

PropertyMetadata(Object)

Menginisialisasi instans baru kelas PropertyMetadata , menggunakan nilai default properti.

PropertyMetadata(Object, PropertyChangedCallback)

Menginisialisasi instans baru kelas PropertyMetadata , menggunakan nilai default properti dan referensi panggilan balik.

PropertyMetadata(Object)

Menginisialisasi instans baru kelas PropertyMetadata , menggunakan nilai default properti.

public:
 PropertyMetadata(Platform::Object ^ defaultValue);
 PropertyMetadata(IInspectable const& defaultValue);
public PropertyMetadata(object defaultValue);
function PropertyMetadata(defaultValue)
Public Sub New (defaultValue As Object)

Parameter

defaultValue
Object

Platform::Object

IInspectable

Nilai default untuk properti tempat PropertyMetadata ini diterapkan.

Berlaku untuk

PropertyMetadata(Object, PropertyChangedCallback)

Menginisialisasi instans baru kelas PropertyMetadata , menggunakan nilai default properti dan referensi panggilan balik.

public:
 PropertyMetadata(Platform::Object ^ defaultValue, PropertyChangedCallback ^ propertyChangedCallback);
 PropertyMetadata(IInspectable const& defaultValue, PropertyChangedCallback const& propertyChangedCallback);
public PropertyMetadata(object defaultValue, PropertyChangedCallback propertyChangedCallback);
function PropertyMetadata(defaultValue, propertyChangedCallback)
Public Sub New (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback)

Parameter

defaultValue
Object

Platform::Object

IInspectable

Nilai default untuk properti tempat PropertyMetadata ini diterapkan.

propertyChangedCallback
PropertyChangedCallback

Referensi ke panggilan balik untuk memanggil perilaku properti yang diubah.

Contoh

Contoh ini menunjukkan penggunaan konstruktor ini. OnLabelChanged mengacu pada implementasi delegasi untuk PropertyChangedCallback (tidak ditampilkan). Untuk melihat kode lainnya yang menempatkan contoh ini dalam konteks, lihat Properti dependensi kustom.

public static readonly DependencyProperty LabelProperty = DependencyProperty.Register(
  "Label",
  typeof(String),
  typeof(ImageWithLabelControl),
  new PropertyMetadata(null,new PropertyChangedCallback(OnLabelChanged))
);
Public Shared ReadOnly LabelProperty As DependencyProperty = _
    DependencyProperty.Register("Label", _
      GetType(String), GetType(ImageWithLabelControl), _
      New PropertyMetadata(Nothing, new PropertyChangedCallback(AddressOf OnLabelChanged)))
DependencyProperty^ ImageWithLabelControl::_LabelProperty = 
    DependencyProperty::Register("Label", 
    Platform::String::typeid,
    ImageWithLabelControl::typeid, 
    ref new PropertyMetadata(nullptr,
      ref new PropertyChangedCallback(&ImageWithLabelControl::OnLabelChanged))
    );

Keterangan

Jika Anda ingin membuat instans PropertyMetadata yang memiliki metode panggilan balik yang diubah properti tetapi bukan nilai default, teruskan null untuk defaultValue.

Jika Anda meneruskan nilai untuk defaultValue, pastikan bahwa jenis nilai tersebut valid untuk jenis propertyType dari definisi properti dependensi melalui panggilan Daftar . Jika Anda telah membuat jenis ketidakcocokan antara parameter pendaftaran dan metadata, masalah hanya memanifestasikan dirinya secara tidak langsung. Anda akan mendapatkan kesalahan runtime saat mencoba membuat instans jenis yang memiliki nilai properti dependensi ini, Anda tidak akan mendapatkan waktu desain atau peringatan atau kesalahan waktu kompilasi.

Lihat juga

Berlaku untuk