Version

NotifyValueChanged Method (UltraWebCalcManager)

Notifies the _CALCMANAGER_ that the value of a calculable control used by a formula has changed.
Syntax
'Declaration
 
Public Sub NotifyValueChanged( _
   ByVal control As Control _
) 
public void NotifyValueChanged( 
   Control control
)

Parameters

control
The calculable Control whose value has changed.
Exceptions
ExceptionDescription
System.ArgumentException

Thrown when control does not correspond to any of the UltraCalc-extended elements within the calculation network. Perhaps control comes from a foreign form or container that lies outside the scope of the current _CALCMANAGER_.

If control was dynamically created at run-time, it may not possess a corresponding CalcSettings that creates an IUltraCalcReference proxy to represent it within the calculation network. In these situations, developers must request a CalcSettings be created by calling GetCalcSettings and passing control before they notify the _CALCMANAGER_ of a value change with this method.

System.ArgumentNullException

Thrown when control is specified as null (or Nothing in Visual Basic .NET).

Remarks

This method allows the developer to manually mark the CalcSettings of calculable control as dirty. When the property that provides the value (as specified in PropertyName) has a corresponding PropertyChanged event, then the _CALCMANAGER_ automatically hooks into and receives this property changed notification and calling this method is unnecessary.

For example, if the PropertyName is "Text", _CALCMANAGER_ will hook the "TextChanged" event. If no such event exists on the control, then the calculation engine is unable to detect a change in the Text of the control. Therefore, the application must call NotifyValueChanged when it detects that the Text of this calculable control has become dirty so formulas that depend upon it's value can be refreshed.

Additionally, when a calculable control receives a formula result as it's value, and is not serving as the source, this notification is also unneccessary.

Requirements

Target Platforms: Windows 10, Windows 8.1, Windows 8, 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

See Also