Interface
IExpression

Defines a contract for expression objects that can provide dynamic property values and participate in the RadProperty value resolution system.

Definition

Namespace:Telerik.WinControls

Assembly:Telerik.WinControls.dll

Syntax:

cs-api-definition
public interface IExpression

Methods

GetValue(RadObject, RadProperty)

Gets the current value for the specified property on the given RadObject.

Declaration

cs-api-definition
object GetValue(RadObject forObject, RadProperty property)

Parameters

forObject

RadObject

The RadObject instance for which to retrieve the property value.

property

RadProperty

The RadProperty whose value should be retrieved.

Returns

object

The current value of the property, or UnsetValue if no value is available.

Remarks

This method is called by the property system when resolving property values. Implementations should return the appropriate value based on their expression logic or UnsetValue to allow fallback to the next value source.

OnAttach(RadObject, RadProperty)

Called when this expression is being attached to the specified property on the given RadObject.

Declaration

cs-api-definition
void OnAttach(RadObject radObject, RadProperty dp)

Parameters

radObject

RadObject

The RadObject to which the expression is being attached.

dp

RadProperty

The RadProperty to which the expression is being attached.

Remarks

This method provides an opportunity for expressions to initialize resources, subscribe to events, or perform other setup operations when they begin providing values for a property.

OnDetach(RadObject, RadProperty)

Called when this expression is being removed from the specified property on the given RadObject.

Declaration

cs-api-definition
void OnDetach(RadObject radObject, RadProperty dp)

Parameters

radObject

RadObject

The RadObject from which the expression is being detached.

dp

RadProperty

The RadProperty from which the expression is being detached.

Remarks

This method provides an opportunity for expressions to clean up resources, unsubscribe from events, or perform other cleanup operations when they are no longer providing values for a property.

SetValue(RadObject, RadProperty, object)

Attempts to set a value through this expression.

Declaration

cs-api-definition
bool SetValue(RadObject radObject, RadProperty dp, object value)

Parameters

radObject

RadObject

The RadObject on which to set the property value.

dp

RadProperty

The RadProperty to set.

value

object

The value to set.

Returns

bool

true if the expression handled the set operation; otherwise, false.

Remarks

Most expression types are read-only and will return false from this method. Data binding expressions may support two-way binding and return true when they successfully update the underlying data source.