We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy.
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

Is there a way to find out if a control is in a tabbed dock group and what its siblings are?

 

There is no direct API to determine the tabbed state, but this can be easily accomplished by accessing some of the internal docking windows classes. The following code tests whether the dockable control ’listBox1’ is in a tabbed dock group, and if so, lists out all controls in that group.

C#

Trace.Assert(this.dockingManager1.GetEnableDocking(this.listBox1));

Syncfusion.Windows.Forms.Tools.DockHost dhost = this.listBox1.Parent as Syncfusion.Windows.Forms.Tools.DockHost;

Syncfusion.Windows.Forms.Tools.DockHostController dhc = dhost.InternalController as

Syncfusion.Windows.Forms.Tools.DockHostController;

if(dhc.ParentController is Syncfusion.Windows.Forms.Tools.DockTabController)

{

Trace.WriteLine("Control is docked as a tab");

Syncfusion.Windows.Forms.Tools.DockTabControl docktab = (dhc.ParentController as

Syncfusion.Windows.Forms.Tools.DockTabController).TabControl;

foreach(DockTabPage tabpage in docktab.TabPages)

{

Control siblingcontrol = tabpage.dhcClient.HostControl.Controls[0];

Trace.WriteLine(siblingcontrol.Name);

}

}

VB

Trace.Assert(Me.dockingManager1.GetEnableDocking(Me.listBox1))

Dim dhost As Syncfusion.Windows.Forms.Tools.DockHost = Me.listBox1.Parent as

Syncfusion.Windows.Forms.Tools.DockHost

Dim dhc As Syncfusion.Windows.Forms.Tools.DockHostController = dhost.InternalController as

Syncfusion.Windows.Forms.Tools.DockHostController

If TypeOf dhc.ParentController Is Syncfusion.Windows.Forms.Tools.DockTabController Then

Trace.WriteLine("Control is docked as a tab")

Dim docktab As Syncfusion.Windows.Forms.Tools.DockTabControl = (dhc.ParentController as

Syncfusion.Windows.Forms.Tools.DockTabController).TabControl

Dim tabpage As DockTabPage

For Each tabpage In docktab.TabPages

Dim siblingcontrol As Control = tabpage.dhcClient.HostControl.Controls(0)

Trace.WriteLine(siblingcontrol.Name)

Next

End If

Article ID: Published Date: Last Revised Date: Platform: Control:
1045 04/30/2011 07/10/2014 Windows Forms DockingManager
Tags:
Did you find this information helpful?
Add Comment
You must log in to leave a comment

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon