バージョン

ToggleDockState メソッド

ペインとその子ペインについて、最後のドッキング状態とフローティング状態を切り替えます。
シンタックス
'宣言
 
Public Sub ToggleDockState() 
public void ToggleDockState()
解説

このメソッドを起動することは、ペインのタイトル バーをダブルクリックすることと同じです。

使用例
Imports Infragistics.Shared
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinDock

Private Sub buttonFlyout_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles buttonFlyout.Click

    ' A control pane can be referenced by the index, key or
    ' control from the ControlPanes collection since that is a
    ' collection of all the DockableControlPane instances managed
    ' by the UltraDockManager.
    Dim pane As DockableControlPane = Me.ultraDockManager1.ControlPanes(Me.ultraDayView1)
    Me.ShowInFlyout(pane)

End Sub

Private Sub ShowInFlyout(ByVal pane As DockableControlPane)

    ' If its already showing and its the active pane, exit
    ' IsFlyoutPaneDisplayed is equivalent to comparing it
    If (pane.IsFlyoutPaneDisplayed AndAlso pane.IsActive) Then
        Return
    End If

    ' If its currently showing in a flyout window but
    ' its not the active pane, we'll active it and exit
    If (pane.IsFlyoutPaneDisplayed AndAlso Not pane.IsActive) Then
        pane.Activate()
        Return
    End If

    ' If the pane is closed, show it first
    If Not pane.IsVisible Then
        pane.Show()
    End If

    ' If another pane is flown out, hide it back first
    If Not pane.Manager.FlyoutPane Is Nothing Then
        pane.Manager.FlyIn()
    End If

    ' If the pane is still pinned...
    If (pane.Pinned) Then

        ' If its floating, let dock it and specify true
        ' for the 'maintainPreviousState' argument which
        ' indicates whether the pane (and in the case of a 
        ' group, its child panes) return to their previous
        ' docked locations or if they are docked together
        ' as they are currently floating. in this example,
        ' we'll just put it back to where it was. this is
        ' essentially the same as toggling its state
        ' i.e. pane.ToggleDockState()
        If (pane.DockedState = DockedState.Floating) Then
            pane.Dock(True)
        End If

        ' Unpin the pane - this should implicitly show it
        pane.Unpin()

        ' We'll explicitly activate it
        pane.Activate()
    Else
        ' If the pane is unpinned, reset the flyout size 
        pane.FlyoutSize = New Size(200, 200)

        ' If its already unpinned, we'll slide it out from
        ' the unpinned tab area and activate it
        pane.Flyout(True, True)
    End If

End Sub
using Infragistics.Shared;
using Infragistics.Win;
using Infragistics.Win.UltraWinDock;
using System.Diagnostics;

private void buttonFlyout_Click(object sender, System.EventArgs e)
{ 

	// A control pane can be referenced by the index, key or
	// control from the ControlPanes collection since that is a
	// collection of all the DockableControlPane instances managed
	// by the UltraDockManager.
	DockableControlPane pane = this.ultraDockManager1.ControlPanes[this.ultraDayView1];
	this.ShowInFlyout( pane );

}

private void ShowInFlyout( DockableControlPane pane )
{

	// If its already showing and its the active pane, exit
	// IsFlyoutPaneDisplayed is equivalent to comparing it
	if (pane.IsFlyoutPaneDisplayed && pane.IsActive)
		return;

	// If its currently showing in a flyout window but
	// its not the active pane, we'll active it and exit
	if (pane.IsFlyoutPaneDisplayed && !pane.IsActive)
	{
		pane.Activate();
		return;
	}

    // If the pane is closed, show it first
    if (!pane.IsVisible)
    	pane.Show();

	// If another pane is flown out, hide it back first
	if (pane.Manager.FlyoutPane != null)
		pane.Manager.FlyIn();

	// If the pane is still pinned...
	if (pane.Pinned)
	{
		// if its floating, let dock it and specify true
		// for the 'maintainPreviousState' argument which
		// indicates whether the pane (and in the case of a 
		// group, its child panes) return to their previous
		// docked locations or if they are docked together
		// as they are currently floating. in this example,
		// we'll just put it back to where it was. this is
		// essentially the same as toggling its state
		// i.e. pane.ToggleDockState();
		if (pane.DockedState == DockedState.Floating)
			pane.Dock(true);

		// Unpin the pane - this should implicitly show it
		pane.Unpin();
		
		// We'll explicitly activate it
		pane.Activate();
	}
	else
	{
		// If the pane is unpinned, reset the flyout size 
		pane.FlyoutSize = new Size(200, 200);

		// If its already unpinned, we'll slide it out from
		// the unpinned tab area and activate it
		pane.Flyout(true, true);
	}

}
参照