PropertyMetadata Constructors
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
PropertyMetadata(Object) |
Initializes a new instance of the PropertyMetadata class, using a property default value. |
PropertyMetadata(Object, PropertyChangedCallback) |
Initializes a new instance of the PropertyMetadata class, using a property default value and callback reference. |
PropertyMetadata(Object)
Initializes a new instance of the PropertyMetadata class, using a property default value.
public:
PropertyMetadata(Platform::Object ^ defaultValue);
PropertyMetadata(IInspectable const& defaultValue);
public PropertyMetadata(object defaultValue);
function PropertyMetadata(defaultValue)
Public Sub New (defaultValue As Object)
Parameters
- defaultValue
-
Object
Platform::Object
IInspectable
A default value for the property where this PropertyMetadata is applied.
Applies to
PropertyMetadata(Object, PropertyChangedCallback)
Initializes a new instance of the PropertyMetadata class, using a property default value and callback reference.
public:
PropertyMetadata(Platform::Object ^ defaultValue, PropertyChangedCallback ^ propertyChangedCallback);
public PropertyMetadata(object defaultValue, PropertyChangedCallback propertyChangedCallback);
function PropertyMetadata(defaultValue, propertyChangedCallback)
Public Sub New (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback)
Parameters
- defaultValue
-
Object
Platform::Object
A default value for the property where this PropertyMetadata is applied.
- propertyChangedCallback
- PropertyChangedCallback
A reference to the callback to call for property changed behavior.
Examples
This example shows usage of this constructor. OnLabelChanged
refers to a delegate implementation for a PropertyChangedCallback (not shown). To see more code that puts this example in context, see Custom dependency properties.
public static readonly DependencyProperty LabelProperty = DependencyProperty.Register(
"Label",
typeof(String),
typeof(ImageWithLabelControl),
new PropertyMetadata(null,new PropertyChangedCallback(OnLabelChanged))
);
DependencyProperty^ ImageWithLabelControl::_LabelProperty =
DependencyProperty::Register("Label",
Platform::String::typeid,
ImageWithLabelControl::typeid,
ref new PropertyMetadata(nullptr,
ref new PropertyChangedCallback(&ImageWithLabelControl::OnLabelChanged))
);
Remarks
If you want to establish a PropertyMetadata instance that has a property-changed callback method but not a default value, pass null
for defaultValue
.
If you pass a value for defaultValue
, make sure that the type of that value is valid for the propertyType
type from the dependency property's definition through the Register call. If you've created a type mismatch between registration parameter and metadata, the issue only manifests itself indirectly. You'll get runtime errors when you try to instantiate a type that has this dependency property value, you won't get any design-time or compile-time warning or error.
See also
- PropertyMetadata(Object)
- Register(String, TypeName, TypeName, PropertyMetadata)
- Custom dependency properties