I'm looking into different possibilities for creating an Outlook-style application where each module (user control or form) supplies its own toolbars to be merged with the main form. Modules should be selected through an UltraExplorerBar.
My first approach was to use an UltraTabControl in Wizard mode, place each module on a separate tab, and show the appropriate tab according to selected group in the explorer bar. This way the user never knows there are tabs in the background (they are not visible). With this approach it seems menu merging has to be done manually, and determining which control should handle the tool click seems rather cumbersome.
Another approach is to use an UltraTabMdiManager, assigning each module form as an MDI child to the main form. This way the toolbars should be merged automatically, but I haven't had a chance to test how tool clicks are handled by parent/child forms yet. However, the tabs for the various MDI children are always shown, which is less than optimal.
Is there any way to hide the tabs using the Mdi tab manager, or am I stuck with showing the MDI child tab?
I'll just go ahead and answer my own question. Hiding tabs in the mdi manager is easily achieved by changing the TabGroup setting "TabStyle" to Wizard, just as described in the manual. Lesson learned: read the manual more closely next time... :-P
I'd just like to add something before you start putting too much effort into this approach (if I understand it correctly). It sounds to me like you would like to have multiple child managers merging into one parent manager at once. If this is the case, it is not supported yet. When using an mdi application, with or without our UltraTabbedMdiManager, only the active mdi child's tools and toolbars will be merged into the parent.
However, if this does suit you needs, you can still use your original apprach. You can do this by setting MdiMergeable to False on all UltraToolbarsManagers involved. Then you can manually set the ActiveMdiChildManager of the parent UltraToolbarsManager to one of the child managers. In both the automatic mdi merging and the manualy merging, merged child tools clicked in the parent will have the ToolClick code fired on the child manager, which makes for easy handling of tool click code and doesn't require you to delegate commands to the varioous UserControls which merged in tools.
I probably didn't explain well enough, but I should be fine with one UltraToolbarManager per module (i.e. per child mdi form) as there will only be one module loaded and visible at any given time. I did some testing on merging tools from child mdi forms, works like a charm.
Thanks for your reply,