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
525
Add Document on the last position of the TabStrip
posted

Hi!

When I add a new ContentPane to a DocumentContentHost by code the tab always appears at the first position. But I want to add it on the last position. I can't find any property to change this for the TabGroupPane or for the position of the ContentPane itself. How can I add the Document on the last position?

Here is my code:

XAML:

<Window
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:igDock="http://infragistics.com/DockManager"
	xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
	xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
	mc:Ignorable="d"
	x:Class="MainWindow"
	x:Name="Window"
	Title="MainWindow"
	Width="640" Height="480">
    <Grid x:Name="LayoutRoot">
        <igDock:XamDockManager x:Name="XamDM">
            <igDock:DocumentContentHost x:Name="DCH">
                <igDock:SplitPane>
                    <igDock:TabGroupPane>
                        <igDock:ContentPane Header="Content Pane">
                            <Grid>
                                <Button Height="25" Width="50" Content="Klick" Name="Button1" />
                            </Grid>
                        </igDock:ContentPane>
                    </igDock:TabGroupPane>
                </igDock:SplitPane>
            </igDock:DocumentContentHost>
        </igDock:XamDockManager>
    </Grid>
</Window>

VB.net:

Imports Infragistics.Windows.DockManager
 
Class MainWindow
    Private NewContentPane As ContentPane
    Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgsHandles Button1.Click
        NewContentPane = XamDM.AddDocument("NewContentPane"New TextBox)
    End Sub
End Class

Greetings,

voks

Parents
No Data
Reply
  • 54937
    Verified Answer
    Offline posted

    The AddDocument method will always place the ContentPane it creates at the first position. I'm not sure what you mean by the last position in the tab strip (i.e. the last actual index in the items collection or the last one in view) but if you want it at the last slot in the items collection then you can probably just get the logical parent of the ContentPane that is returned (e.g. using LogicalTreeHelper.GetParent), cast that to a TabGroupPane, remove the ContentPane from the tab group's Items collection and add it to the Items collection at the end.

    Note: As I believe I've mentioned in other posts, it should be noted that the default panel used in the TabGroupPane when hosted in the DocumentContentHost is a custom virtualizing panel that only creates the first n tabs that fit in view so whenever a pane is activated in a document TabGroupPane and the tab item is not in view (or more accurately there isn't a tabitem associated with it), it will be moved to the first item in the Items collection just as happens in VS when you activate a pane that is not in view.

Children