Version

DockablePaneBase Class

Abstract base class for dockable panes.
Syntax
'Declaration
 
Public MustInherit Class DockablePaneBase 
   Inherits Infragistics.Shared.KeyedSubObjectBase
   Implements Infragistics.Shared.IKeyedSubObject, Infragistics.Shared.IKeyedSubObjectEx, Infragistics.Win.UltraWinTabs.ITabItem 
public abstract class DockablePaneBase : Infragistics.Shared.KeyedSubObjectBase, Infragistics.Shared.IKeyedSubObject, Infragistics.Shared.IKeyedSubObjectEx, Infragistics.Win.UltraWinTabs.ITabItem  
Remarks

The DockablePaneBase class implements the common functionality for all pane objects. Pane objects are the basic container class used by the UltraDockManager.

The Settings property returns a PaneSettings object that affects the behavior and appearance of the pane instance. The SettingsResolved returns a PaneSettingsResolved instance to allow access to the resolved property values.

The Text property determines the caption for the pane. This string is used in the PaneCaptionUIElement but also may be used in the tab if the TextTab property is not set.

The class implements methods for changing where a pane is docked. The ToggleDockState method is used to switch between the docked and floating state of the pane. i.e. If a pane is currently docked but was previously floating, invoking this method will return the pane to that position. If the pane had never been floated, it will be displayed in a new DockAreaPane. This method mimics the default behavior that occurs when the user double clicks on a pane caption, tab or sliding group element.

Example
The following code creates several DockableControlPanes to contain controls on the form and then create the DockAreaPane instances to contain them.

Imports Infragistics.Shared
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinDock

Private Sub CreateDockManagerPanes(ByVal manager As UltraDockManager)
    ' this code assumes that there is a treeview (treeview1),
    ' listview (listview1) and rich textbox (richtext1) on 
    ' the form

    ' create control panes to contain the listview
    ' and tree view
    Dim paneTree As DockableControlPane = New DockableControlPane("tree", "MS Treeview", Me.treeView1)
    Dim paneList As DockableControlPane = New DockableControlPane()

    paneList.Key = "list"
    paneList.Text = "MS Listview"
    paneList.Control = Me.listView1

    ' create a dock area to contain the control panes
    Dim dockAreaLeft As DockAreaPane = New DockAreaPane(DockedLocation.DockedLeft)

    ' add the control panes to the dock area
    dockAreaLeft.Panes.Add(paneTree)
    dockAreaLeft.Panes.Add(paneList)

    ' display the panes in a tab group
    dockAreaLeft.ChildPaneStyle = ChildPaneStyle.TabGroup

    ' initialize the size of the dock area
    dockAreaLeft.Size = New Size(200, 200)

    ' let the tabs autosize to the tab caption
    dockAreaLeft.GroupSettings.TabSizing = Infragistics.Win.UltraWinTabs.TabSizing.AutoSize

    ' unpin the panes
    dockAreaLeft.Unpin()

    ' now create the control pane to contain the richtext
    Dim paneText As DockableControlPane = New DockableControlPane("text", "MS RichText", Me.richTextBox1)

    ' create a dock area on the right to contain the rich text
    Dim dockAreaFloat As DockAreaPane = New DockAreaPane(DockedLocation.DockedRight)

    ' initialize the size of the dock area
    dockAreaFloat.Size = New Size(120, 200)

    ' contain the rich text pane in the dock area
    dockAreaFloat.Panes.Add(paneText)

    ' finally, add the dock areas to the dock manager
    manager.DockAreas.AddRange( _
        New DockAreaPane() {dockAreaLeft, dockAreaFloat})

    ' float the rich text dock area but give it a different
    ' floating size
    dockAreaFloat.Float(False, New Rectangle(400, 400, 200, 150))
End Sub
using Infragistics.Shared;
using Infragistics.Win;
using Infragistics.Win.UltraWinDock;
using System.Diagnostics;

private void CreateDockManagerPanes( UltraDockManager manager )
{
	// this code assumes that there is a treeview (treeview1),
	// listview (listview1) and rich textbox (richtext1) on 
	// the form
	
	// create control panes to contain the listview
	// and tree view
	DockableControlPane paneTree = new DockableControlPane("tree", "MS Treeview", this.treeView1);
	DockableControlPane paneList = new DockableControlPane();

	paneList.Key = "list";
	paneList.Text = "MS Listview";
	paneList.Control = this.listView1;

	// create a dock area to contain the control panes
	DockAreaPane dockAreaLeft = new DockAreaPane(DockedLocation.DockedLeft);

	// add the control panes to the dock area
	dockAreaLeft.Panes.Add( paneTree );
	dockAreaLeft.Panes.Add( paneList );

	// display the panes in a tab group
	dockAreaLeft.ChildPaneStyle = ChildPaneStyle.TabGroup;

	// initialize the size of the dock area
	dockAreaLeft.Size = new Size(200, 200);

	// let the tabs autosize to the tab caption
	dockAreaLeft.GroupSettings.TabSizing = Infragistics.Win.UltraWinTabs.TabSizing.AutoSize;

	// unpin the panes
	dockAreaLeft.Unpin();

	// now create the control pane to contain the richtext
	DockableControlPane paneText = new DockableControlPane("text", "MS RichText", this.richTextBox1);

	// create a dock area on the right to contain the rich text
	DockAreaPane dockAreaFloat = new DockAreaPane(DockedLocation.DockedRight);

	// initialize the size of the dock area
	dockAreaFloat.Size = new Size(120, 200);

	// contain the rich text pane in the dock area
	dockAreaFloat.Panes.Add( paneText );

	// finally, add the dock areas to the dock manager
	manager.DockAreas.AddRange(
		new DockAreaPane[] { dockAreaLeft, dockAreaFloat } );

	// float the rich text dock area but give it a different
	// floating size
	dockAreaFloat.Float(false, new Rectangle(400, 400, 200, 150));
}
Requirements

Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also