Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
955
XamDocManager - How to retain a TabGroupPane inside DocumentContentHost, even after deleting all ContentPane inside the tab group.
posted

Hello,

I have an requirement to not to display "blank" doc manager - document content pane. I am achieving this by doing below... (ref "dummyRecordDisplayPane")

            <igDock:XamDockManager Grid.Column="1" Name="dockManager" Theme="Office2k7Blue">
                <igDock:XamDockManager.Panes>
                    <igDock:SplitPane igDock:XamDockManager.InitialLocation="DockedLeft">
                        <igDock:ContentPane x:Name="dataKeysPane" Header="Data Keys" AllowClose="False">
                            <igDP:XamDataGrid />
                        </igDock:ContentPane>
                    </igDock:SplitPane>
                </igDock:XamDockManager.Panes>
                <igDock:DocumentContentHost>
                    <igDock:SplitPane>
                        <igDock:TabGroupPane>
                            <igDock:ContentPane x:Name="dummyRecordDisplayPane" Header="" Visibility="Hidden" Tag="DummyRecordDisplayPane"/>
                        </igDock:TabGroupPane>
                    </igDock:SplitPane>
                </igDock:DocumentContentHost>
            </igDock:XamDockManager>

By which I display  a dummy content pane inside the tab group.

First, I would like to know is there any other way of achieving this other than having a dummy content pane, basically I don't want user to see a blank window, instead I want to display a window that get filled with something... If I remove igDock:ContentPane, then I get a blank blue screen on the right...

Second, when I delete all the document panes(including this dummy one) programatically, I get a blank window again. I am working around this situation by not deleting the pane that has tag "DummyRecordDisplayPane".

But I really don't like this workaround and would like to know is there a better way of doing this? Are they any property on tab group to achieve this (always show one dummy content pane or something like that).

Thanks in advance and please let me know if you need any clarification on my issue described here. 

 

 

Parents
No Data
Reply
  • 54937
    Verified Answer
    Offline posted

    There are no properties currently on the TabGroupPane to force it to show a dummy area. What will happen right now is that when the TabGroupPane contains 0 visible ContentPanes it will be hidden (or possibly removed in the case where it doesn't have a name and all panes have been removed entirely). If this is just a visual hint/queue then perhaps you could retemplate the DocumentContentHost to contain a dummy non-hit testable TabGroupPane. e.g.

    <igDock:XamDockManager>
        <igDock:XamDockManager.Resources>
            <ControlTemplate x:Key="documentHostTemplate" TargetType="igDock:DocumentContentHost">
                <Border Background="{TemplateBinding Background}"
                        BorderBrush="{TemplateBinding BorderBrush}"
                        BorderThickness="{TemplateBinding BorderThickness}"
                        SnapsToDevicePixels="True">
                    <Grid>
                        <igDock:TabGroupPane IsHitTestVisible="False">
                            <igDock:ContentPane Header="" Visibility="Hidden" />
                        </igDock:TabGroupPane>
                        <igDock:DocumentContentHostPanel
                            x:Name="PART_Panel"
                            SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
                            HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                            VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                            Margin="{TemplateBinding Padding}" />
                    </Grid>
                </Border>
            </ControlTemplate>
        </igDock:XamDockManager.Resources>
        <igDock:DocumentContentHost Template="{StaticResource documentHostTemplate}">
           
        </igDock:DocumentContentHost>
    </igDock:XamDockManager>

Children