This documentation is archived and is not being maintained.

PropertyMetadata.DefaultValue Property

Gets or sets the default value of the dependency property.

Namespace:  System.Windows
Assembly:  WindowsBase (in WindowsBase.dll)
XMLNS for XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

public Object DefaultValue { get; set; }
Members of this type are not typically used in XAML.

Property Value

Type: System.Object
The default value of the property. The default value on a PropertyMetadata instance created with the parameterless constructor will be UnsetValue; see Remarks.

ExceptionCondition
ArgumentException

Cannot be set to the value UnsetValue once created; see Remarks.

InvalidOperationException

Cannot set a metadata property once it is applied to a dependency property operation.

DefaultValue is defined in the object model as read-write. This is so DefaultValue can be adjusted after initialization of the PropertyMetadata object itself. However, once the metadata is consumed as part of a call to Register, AddOwner, or OverrideMetadata, the property system will seal that metadata instance and the properties are now considered immutable. Attempting to set DefaultValue once IsSealed is true on this metadata instance will raise an exception.

Although it is the default per the parameterless constructor, a defaultValue of UnsetValue cannot be set using either DefaultValue or the constructor. Attempting to do so will raise an exception.

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0
Show: