Freigeben über


PropertyMetadata Konstruktoren

Definition

Überlädt

PropertyMetadata(Object)

Initialisiert eine neue instance der PropertyMetadata-Klasse unter Verwendung eines Eigenschaftsstandardwerts.

PropertyMetadata(Object, PropertyChangedCallback)

Initialisiert eine neue instance der PropertyMetadata-Klasse unter Verwendung eines Eigenschaftsstandardwerts und eines Rückrufverweiss.

PropertyMetadata(Object)

Initialisiert eine neue instance der PropertyMetadata-Klasse unter Verwendung eines Eigenschaftsstandardwerts.

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

Ein Standardwert für die Eigenschaft, in der diese PropertyMetadata-Eigenschaft angewendet wird.

Gilt für:

PropertyMetadata(Object, PropertyChangedCallback)

Initialisiert eine neue instance der PropertyMetadata-Klasse unter Verwendung eines Eigenschaftsstandardwerts und eines Rückrufverweiss.

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

Ein Standardwert für die Eigenschaft, in der diese PropertyMetadata-Eigenschaft angewendet wird.

propertyChangedCallback
PropertyChangedCallback

Ein Verweis auf den Rückruf, der für das geänderte Verhalten der Eigenschaft aufgerufen werden soll.

Beispiele

Dieses Beispiel zeigt die Verwendung dieses Konstruktors. OnLabelChanged verweist auf eine Delegatenimplementierung für ein PropertyChangedCallback (nicht angezeigt). Weitere Informationen zum Code, der dieses Beispiel in einen Kontext stellt, finden Sie unter Benutzerdefinierte Abhängigkeitseigenschaften.

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))
    );

Hinweise

Wenn Sie einen PropertyMetadata-instance einrichten möchten, der eine Eigenschaft geänderte Rückrufmethode, aber keinen Standardwert aufweist, übergeben Sie NULL für defaultValue.

Wenn Sie einen Wert für defaultValue übergeben, stellen Sie sicher, dass der Typ dieses Werts für den PropertyType-Typ aus der Definition der Abhängigkeitseigenschaft über den Register-Aufruf gültig ist. Wenn Sie einen Typkonflikt zwischen Registrierungsparametern und Metadaten erstellt haben, tritt das Problem nur indirekt auf. Sie erhalten Laufzeitfehler, wenn Sie versuchen, einen Typ mit diesem Abhängigkeitseigenschaftswert zu instanziieren. Sie erhalten keine Entwurfszeit- oder Kompilierzeitwarnungen oder -fehler.

Weitere Informationen

Gilt für: