Reactive C# assignment operators update the left-hand side expression value whenever the right-hand side expression value changes.

lhs = rhs;
Activating this reactive code will set up a one-way data binding from rhs to lhs.


If a member/variable was already bound (assigned) by other reactive code, then this data binding is overwritten.

Rolling changes back

An assignment operator listens to the changes of the left-hand side expression, but skips those that were caused by the operator itself. When the operator is deactivated, the latest left-hand side expression is restored.

Member expression in left-hand side

If the left-hand side expression is a member access, then its arguments (instance, indexer arguments, attached dependency property setter arguments) are observed. Whenever the argument value set changes, the assignment is reset (changes are rolled back).

Last edited Feb 14, 2011 at 9:16 PM by reactive, version 1


No comments yet.