ClassRadExpression
Abstract base for all spreadsheet expressions, providing lazy evaluation, change propagation, and value caching for formula calculation.
Definition
Namespace:Telerik.Windows.Documents.Spreadsheet.Expressions
Assembly:Telerik.Windows.Documents.Spreadsheet.dll
Syntax:
public abstract class RadExpression
Inheritance: objectRadExpression
Derived Classes:
Constructors
RadExpression()
Initializes a new expression with an unknown evaluation state.
Declaration
protected RadExpression()
Methods
AttachToChildEvent(RadExpression)
Subscribes to value change events from a single child expression to propagate invalidation upward.
Declaration
protected void AttachToChildEvent(RadExpression childExpression)
Parameters
childExpression
The child expression.
AttachToChildrenEvent(IEnumerable<RadExpression>)
Subscribes to value change events from multiple child expressions to propagate invalidation upward.
Declaration
protected void AttachToChildrenEvent(IEnumerable<RadExpression> childExpressions)
Parameters
childExpressions
IEnumerable<RadExpression>
The child expressions.
GetValue()
Evaluates and returns the computed value, detecting cyclic references during calculation.
Declaration
public RadExpression GetValue()
Returns
The value as RadExpression.
GetValueAsString()
Evaluates the expression and returns the result formatted as a string.
GetValueAsString(CultureInfo)
Evaluates the expression and returns the result formatted according to the specified culture.
Declaration
public string GetValueAsString(CultureInfo cultureInfo)
Parameters
cultureInfo
The culture info.
Returns
The value as string.
GetValueOverride()
Calculates the expression result; override to define specific evaluation logic for each expression type.
Declaration
protected abstract RadExpression GetValueOverride()
Returns
The value as RadExpression.
InvalidateValue()
Marks the cached value as invalid, triggering recalculation on next access and propagating invalidation to dependent expressions.
Declaration
protected void InvalidateValue()
OnValueInvalidated()
Raises the ValueInvalidated event to notify dependent expressions.
Declaration
protected virtual void OnValueInvalidated()
ToString()
Converts the expression to its formula string representation using default culture.
ToString(CultureInfo)
Converts the expression to its formula string representation using the specified culture for number and list separators.
Declaration
public string ToString(CultureInfo cultureInfo)
Parameters
cultureInfo
The culture info.
Returns
The expression as string.
Events
ValueInvalidated
Raised when the expression's cached value becomes invalid and requires recalculation.