Hello Mariam,
changing the visibility (or Embedded status) of a view controlled by an Outline Box triggers the UpdateViewState method invocation in the component containing the Outline Box. This UpdateViewState method thereupon recalculates the arrangement of all views controlled by the Outline Box.
Should the UpdateViewState method itself change the visibility (or Embedded status) of a view, then this will affect the layout of the Outline Box and thus the UpdateViewState method is invoked again. Theoretically this could lead to an endless situation. Embedded Wizard detects this and ignores the 'recursive' UpdateViewState invocation.
How to fix the problem:
- Change the visibility (Embedded state) of views controlled by an Outline Box always outside the UpdateViewState method.
- If it is inevitable to perform the state changes while processing the UpdateViewState method, implement following trick:
Step 1: In the component containing the Outline Box add a new slot method. Name it e.g. updateOutlineBoxViews.
Step 2: Remove the code responsible for changing the visibility (Embedded state) from the UpdateViewState method.
Step 3: Place this code (from step 2) in the new slot method (from step 1).
Step 4: In the UpdateViewState method add following statement to trigger the slot method execution:
postsignal updateOutlineBoxViews;
I hope it helps you further.
Best regards
Paul Banach