New to Telerik UI for WinForms? Start a free 30-day trial

Provides metadata for RadElement properties, including layout and rendering behavior options.

This class extends RadPropertyMetadata to provide element-specific property metadata that controls how property changes affect layout, rendering, and inheritance within the element hierarchy. The metadata includes options for invalidating layout, affecting measurements, controlling inheritance, and determining what aspects of the element tree need to be updated when property values change.

Definition

Constructors

Initializes a new instance of the RadElementPropertyMetadata class.

C#
public RadElementPropertyMetadata()

Initializes a new instance of the RadElementPropertyMetadata class with the specified default value, property options, and property changed callback.

C#
public RadElementPropertyMetadata(object defaultValue, ElementPropertyOptions options, PropertyChangedCallback propertyChangedCallback)
Parameters:defaultValueobject

The default value for the property.

optionsElementPropertyOptions

The element property options that control layout and rendering behavior.

propertyChangedCallbackPropertyChangedCallback

The callback method to invoke when the property value changes.

Initializes a new instance of the RadElementPropertyMetadata class with the specified default value and property options.

C#
public RadElementPropertyMetadata(object defaultValue, ElementPropertyOptions options)
Parameters:defaultValueobject

The default value for the property.

optionsElementPropertyOptions

The element property options that control layout and rendering behavior.

Initializes a new instance of the RadElementPropertyMetadata class with the specified default value.

C#
public RadElementPropertyMetadata(object defaultValue)
Parameters:defaultValueobject

The default value for the property.

Properties

Gets or sets a value indicating whether property changes affect the arrangement phase of layout for this element.

C#
public bool AffectsArrange { get; set; }

Gets or sets a value indicating whether property changes affect the visual display of the element.

C#
public bool AffectsDisplay { get; set; }

Gets or sets a value indicating whether property changes affect the layout of the element.

C#
public bool AffectsLayout { get; set; }

Gets or sets a value indicating whether property changes affect the measurement phase of layout for this element.

C#
public bool AffectsMeasure { get; set; }

Gets or sets a value indicating whether property changes affect the arrangement phase of the parent element.

C#
public bool AffectsParentArrange { get; set; }

Gets or sets a value indicating whether property changes affect the measurement phase of the parent element.

C#
public bool AffectsParentMeasure { get; set; }

Gets or sets a value indicating whether property changes can be canceled.

C#
public bool Cancelable { get; set; }

Gets or sets a value indicating whether the property value can be inherited from parent elements in the element hierarchy.

C#
public bool CanInheritValue { get; set; }

Gets or sets a value indicating whether property changes invalidate the layout of the element.

C#
public bool InvalidatesLayout { get; set; }

Gets the element property options that define how property changes affect layout and rendering.

C#
public ElementPropertyOptions PropertyOptions { get; }

Methods

Creates a new instance of RadElementPropertyMetadata.

C#
protected override RadPropertyMetadata CreateInstance()
Returns:

RadPropertyMetadata

A new RadElementPropertyMetadata instance.

Overrides: RadPropertyMetadata.CreateInstance()

Merges this metadata with base metadata when the property is defined in a derived class.

C#
protected override void Merge(RadPropertyMetadata baseMetadata, RadProperty dp)
Parameters:baseMetadataRadPropertyMetadata

The base metadata to merge with.

dpRadProperty

The dependency property being merged.

Overrides: RadPropertyMetadata.Merge(RadPropertyMetadata, RadProperty)

Called when metadata is applied to a property, setting up inheritance behavior based on CanInheritValue.

C#
protected override void OnApply(RadProperty dp, Type targetType)
Parameters:dpRadProperty

The dependency property this metadata is being applied to.

targetTypeType

The target type for the property.

Overrides: RadPropertyMetadata.OnApply(RadProperty, Type)