Share via

PropertyMetadata Constructor (Object)

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Initializes a new instance of the PropertyMetadata class, using a property default value.

Namespace:  System.Windows
Assembly:  System.Windows (in System.Windows.dll)


Public Sub New ( _
    defaultValue As Object _
public PropertyMetadata(
    Object defaultValue



The defaultValue for the PropertyMetadata specified as typeMetadata must be able to be typed as the type parameter, when you call Register or RegisterAttached to register a dependency property. A mismatch of types will not be noted at the time of registration, and will instead produce a run-time exception in type initialization for an instance of the owning type.

Because of the function of the Silverlight property system, the apparent value of a property (even if not locally set) is not always the default value as registered with a property's metadata. For details, see Dependency Property Value Precedence.

Do not use the value UnsetValue as the default value for a custom dependency property. UnsetValue is reserved for use as a sentinel value that participates in dependency property precedence determination.

Version Information


Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0


For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.