Share via

FrameworkPropertyMetadata.SubPropertiesDoNotAffectRender Property


Gets or sets a value that indicates whether sub-properties of the dependency property do not affect the rendering of the containing object.

 property bool SubPropertiesDoNotAffectRender { bool get(); void set(bool value); };
public bool SubPropertiesDoNotAffectRender { get; set; }
member this.SubPropertiesDoNotAffectRender : bool with get, set
Public Property SubPropertiesDoNotAffectRender As Boolean

Property Value

true if changes to sub-property values do not affect rendering if changed; 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.


This metadata option is pertinent for dependency properties that are reference types, where that type has property values of its own. Typically, the layout system logic is to assume that any dependency property with sub-properties potentially will affect layout, because checking all sub-properties for changes is more time consuming than actually running another render pass. Setting this option to true is useful for optimizing performance of the WPF framework level layout system implementation.

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, once 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.

XAML Text Usage

Members of this class are not typically used in XAML.

Applies to

See also