Hello Soroosh.Tehrany,
I suppose you refer to the properties existing in Mosaic classes, for example, the property Color of the Filled Rectangle view. In such case, the update is triggered only, when the value will change. Assigning the value already stored in the property is ignored in such case. For this purpose the onset method associated to the property contains following (or similar) condition at its very beginning:
// The color does not change -> Nothing to do.
if ( value == pure Color )
return;
...
Please note, that changing a property belonging to a view does not execute the update immediately. Instead, the screen area affected by the alternation is recorded internally. The real screen update is performed later when the application has finalized all operations. This approach permits multiple property alternations to be accumulated and optimizes the screen update significantly.
In turn, if you refer to your own implemented properties (not the properties belonging to Mosaic views as explained above), the behavior depends on whatever you have implemented in the onset method associated to the property. Generally, every time a value is assigned to a property, its associated onset method is invoked. In the implementation of the onset method you can decide how to handle the assignment operation - you can perform some update even if the same value is assiged twice in such case.
I hope it helps you further.
Best regards
Paul Banach