This documentation is archived and is not being maintained.

FrameworkPropertyMetadata.IsNotDataBindable Property

Gets or sets a value that indicates whether the dependency property supports data binding.

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

public bool IsNotDataBindable { get; set; }
Members of this class are not typically used in XAML.

Property Value

Type: System.Boolean
true if the property does not support data binding; otherwise, false. The default is false.


The metadata has already been applied to a dependency property operation, so that metadata is sealed and properties of the metadata cannot be set.

Note that this metadata property is set to true specifically for properties that should not support data binding, despite being read-write properties. The expectation is that in most cases where a dependency property is declared, data binding is desired, because data binding is one of the key scenarios where a dependency property is useful. Unlike BindsTwoWayByDefault, this does not merely change a default that can later be changed on a specific binding. Setting this property true in the metadata for a dependency property metadata will disable all bindings from applying their values through expressions to that dependency property.

Read-only dependency properties do not support data binding (because they have no setter that can apply changed values), but will still report false for IsNotDataBindable. This is because properties that correspond to a FrameworkPropertyMetadataOptions values will report parity with how the metadata was actually established, rather than always reporting the end result behavior that the naming of the property might imply. To determine whether a given dependency property permits data binding, you should usually check IsDataBindingAllowed instead. IsDataBindingAllowed is a convenience for checking both ReadOnly and IsNotDataBindable as a single operation, yielding the expected result.

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

.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

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