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
Tried the project, but it was looking for the 11.2 version of Infragistics. When I deleted those references in order to add references to 12.1, VS2010 crashes. Turned off what extensions I could, to no effect.
Could you pass this back to me with references to Infragistics v12.1, please? Even better would be this done over in VB.
TIA;
Here is the new sample with version 12.1 and VB
Let me know if you have any questions.
Georgi;
Thank you for the updated example. I picked up the 12.2 stuff, and this example works.
I think I see part of the problem. The example produces an effect, so long as the panes are pinned. In the example you sent, if 'UltraExplorerBar1' is un-pinned, the re-position fails. (nothing happens)
In actuality, the case I am trying to solve is closer to then two tabs shown in the example, 'UltraGauge1' and 'UltraGauge2'. My task is to try and resort 'UltraGauge1' and 'UltraGauge2' into a set order after either 'UltraGauge1' or 'UltraGauge2' is changed from pinned to un-pinned. In my case, however, I can pin/un-pin each of the 'UltraGauge' tabs independently - because I use multiple DockAreas, not multiple panes in a dock area.
So, this example will move the DockAreas around, so long as they're pinned. Is there a way to move the DockAreas that are un-pinned?
Pat
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 Pat,
Thanks for your response and sample. Please feel free to write us if you have any questions.
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.
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...
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.