Suppose I have several floating DockAreaPanes, each containing a single DockableControlPane. I allow the user to tile the screen vertically or horizontally with a subset of the floating panes.
It happens sometimes that the z-order of floating panes is wrong, so that part of a pane being tiled is covered by another pane not part of the current tiled group.
How can I set the z-order of floating dock areas? If I remove a DockAreaPane and reinsert at the desired index, it loses its contents.
Thanks
For the record, I succeeded with the following strategy.
For each DockableControlPane pane, working backwards: pane.Parent.Panes.Remove(pane); DockAreaPane dap = new DockAreaPane(DockedLocation.Floating); dap.Panes.Add(pane); pane.Manager.DockAreas.Insert(dap, 0);
I disabled events around the loop. There is some flashing which I'll try to reduce.
The trick is apparently to create a new DockAreaPane rather than manipulate the old one.
With the above strategy, the new floating pane appears briefly before assuming its new location and size. It has a full-height XP window caption as opposed to the shorter tool caption it eventually gets, and appears in a standard cascade if there are several.
I tried various ways to eliminate the flash, including hiding the pane until repositioned, and moving the new floating DockAreaPane offscreen, but none worked.
How do I do it?
Hello Bob,
Would you be able to attach a sample project to this thread so I can see what you're doing? To do so, click on the "Options" tab and then click the "Add/Update" button.
Dave, I uploaded a sample (not trimmed for this post).
To see the behavior:
Launch the app; click the button; move the observer window to the side and click the button again.
In the tree, control-left-click both leaf nodes. Right click one of them and choose "tile horizontally".
If you watch near the original form you should see two small windows flash before they are resized to fill the screen.
I have logged this as a development issue.
I know it's been a while since you last posted on this thread, but I just tried your sample with the latest service release, and I no longer see the issue. Try installing the latest service release for NetAdvantage 2010 Volume 2 and let me know if you still see the issue.
Thanks, Dave.
The issue you logged was the original question of this thread, but the current issue is really the flashing of the small windows before they have been resized. Still, it would be convenient to have a better way to set the z-order than my workaround.