What I would like to do is to reorder the flyout tabs that are shown each the 'AfterPaneButtonClick' event is raised. Flyout tabs on the top would sort with other flyout tabs on the top, left with left, and so on. The idea is to impose an order on the flyout tabs.
Do you have any example code that shows how to do this?
Patrick
Hello Patrick,
I`m not sure that I understand your requirements and final goals, but one possible approach to reposition your panes could be is your are using methods:
- ultraDockManager1.ControlPanes[0].RepositionToPane()
- ultraDockManager1.ControlPanes[0].RepositionToGroup()
If you want to keep always the same layout into your UltraDockManages, you could save and load desired layout using the methods:
- ultraDockManager1.LoadFromXML("..\\..\\Layout.xml");
- ultraDockManager1.SaveAsXML("..\\..\\Layout.xml");
I made small sample for you where I`m using my second suggestion. By this way the user could dock the pane everywhere, but the layout will be always the same. Please take a look at the attached sample and vidoe file and let me know if you think that I misunderstand your question or if you have any further questions.
Regards
Here is the sample
Here's the project you gave to me. In it I've shown how I re-sort the tabs.
The only problem I am having with the demo that I posted is that there is a lot of flashing going on when I do the re-sort. This, even though I suspend the layout of the form containing the UltraDockManager control, and suspend the layout of the UltraDockManager control itself. Is there a better way to accomplish this sort that doesn't pin/unpin DockAreaPanes, or a way to minimize the flashing that occurs?
Thanks
Hello Mchargue,
Thanks for attached sample. Looking at the sample`s code, I think that flickering is due to your loops to Pin and Unpin the panes. I comment this piece of code and I think that everything works properly. I suppose that you are using these loops to determinate the priority of your panes. If I`m right about my guess, maybe you could try to implement IDockingArea.PriorityLevel interface instead of tese two loops.
Let me know if you have any questions.
I am sure that the flashing is due tot he unpin/pin loops. I would have expected, though, that suspending the layout would have suppressed this behavior.
Ah, implement the 'IDockingArea.PriorityLevel' - I can make a stab-in-the-dark on this, I guess. Do you have any examples you can refer me to?
It would have been nice if the collection of tabs could have been resorted...
Here's a better version of what I sent before.
I can't detect any flashing in the test casse.
I think this is closed.
Pat
Hello Pat,
Thanks for your response and sample. Please feel free to write us if you have any questions.