Within my single top level window, is it possible to have a set of dockable/floatable 'parent' tabs, where each 'parent' tab contains a nested set of dockable / floatable 'child' tabs ?
The idea being that in my application I want to open a project that may contain several models (parent tabs). Each model has the exact same set of user controls associated with it, where only the associated data within each control is different. I want to be able to compare model data side by side.
I tried a proof of concept window as per the folowing code which compiles and runs fine but when I try and float the content contained inside the 'model' tab, and then try and dock again it throws an InvalidOperationException 'System.Windows.FrameworkContentElement' is not a Visual or Visual3D.'
Is this possible at all and if so how can I do this without any errors being thrown ?
<Window x:Class="Test"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:igDock="http://infragistics.com/DockManager"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Test" Height="300" Width="300">
<Grid>
<igDock:XamDockManager Background="#848589" x:Name="dockManagerBase">
<igDock:XamDockManager.Panes>
<igDock:SplitPane igDock:XamDockManager.InitialLocation="DockedTop" Height="300" SplitterOrientation="Vertical">
<igDock:TabGroupPane>
<igDock:ContentPane Header="Model #1">
<!-- BEGIN MODEL 1 NESTED XamDocManager-->
<igDock:XamDockManager Theme="Aero">
<igDock:SplitPane igDock:XamDockManager.InitialLocation="DockedLeft">
<igDock:ContentPane Header="Left Edge Dock Pane">
</igDock:ContentPane>
</igDock:SplitPane>
<igDock:SplitPane igDock:XamDockManager.InitialLocation="DockedRight">
<igDock:ContentPane Header="Right Edge Dock Pane">
</igDock:XamDockManager.Panes>
</igDock:XamDockManager>
<!-- END MODEL 1 NESTED XamDocManager-->
<igDock:ContentPane Header="Model #2">
<!-- BEGIN MODEL 2 NESTED XamDocManager-->
<igDock:SplitPane igDock:XamDockManager.InitialLocation="DockedTop">
<igDock:ContentPane Header="Top Edge Dock Pane">
<igDock:SplitPane igDock:XamDockManager.InitialLocation="DockedBottom">
<igDock:ContentPane Header="Bottom Edge Dock Pane">
<!-- END MODEL 2 NESTED XamDocManager-->
</igDock:TabGroupPane>
</Window>
Many Thanks,
Alistair
In theory that should be ok - having a XamDockManager within a XamDockManager. I would recommend reporting the exception you are getting to the support group and you can be notified when the issue has been addressed.
Thanks - Good to know that you think it should work (at least in theory !) - I've submitted a support request as suggested - I'll post up any feedback I get for anyone else coming up against the same problem.
Still havn't heard anything back yet - other than they've assigned it a bug number - (Bug 6846 - current status 'In Development' since 1st Sep)
We are having the same problem with nesting xamdockmanagers. Have you heard anything back from support, if not I will let them know I am having the issue as well.
Thanks!