User Interface for .NET / User's Guide / Docking Panels / Docking Panels

Docking Panels

 Overview

A generic docking panel.

 

Nevron Docking Panels are predefined controls meant to provide true WYSIWYG docking functionality. The rich yet easy to use interface-based object model makes it very simple to provide your custom functionality and extend appearance.

 Class Hierarchy

 

 

 Functionality

Nevron docking panels are fully programmable - all functionality can be achieved either visually or from code.

 

The following table describes available public methods regarding docking functionality:

 

Method Description
 Activate

Activates the panel and gives it keyboard focus.

 Close

Closes the panel and removes it from the docking framework.

 Display

Shows a previously hidden panel. Use this method instead of changing panel's visibility directly.

 Float

Makes the panel floating.

 Maximize Maximizes the panel within its parent zone.
 PerformDock

Docks the panel to the specified INDockZone using the specified DockStyle at the desired index.

 Redock

Toggles the current state of the panel - if the DockState is Floating the method restores a previously saved docked state, else the panel is made floating.

 RefreshCaption

Invalidates and updates the caption area of the panel.

 Restore

Restores the panel's SizeState to Normal.

 ShowContextMenu

Displays a context sensitive menu for the panel at the specified screen location.

 UpdateCaption

Performs re-measure and repaint of the caption area.

 

 Notifications

Each docking panel fires lots of notifications which, if not handled, are bubbled up to the manager that the panel is attached to.

 

The following table describes available notifications fired by a NDockingPanel control:

 

Notification Description
 Activated Notifies that the panel has been activated and received keyboard focus.
 Activating Notifies that a panel is about to be activated.
 AfterFloat Notifies that a panel has been floated.
 AfterDock Notifies that a panel has been docked.
 BeforeDock Notifies that a panel is about to be docked. Cancelable.
 BeforeFloat Notifies that a panel is about to be floated. Cancelable.
 BeginDragging Notifies of a drag operation start upon a panel.
 CaptionButtonClicked Notifies that a caption button has been clicked. The event arguments contain information about the button id.
 Deactivated Notifies that a panel has been deactivated.
 Deactivating Notifies that a panel is about to be deactivated.
 Dragging Notifies that a panel is being dragged. Cancelable.
 EndDragging Notifies for an end of a drag operation upon a panel.

 

All notifications are also available at the manager's level. Signature is the same except that all event names begin with "Panel" - for example Activated will be PanelActivated.
 Permissions

NDockingPanel can be applied a set of permissions controlling its behaviour. Those permissions are exposed via panel's Permissions property.

 

The following table describes these permissions:

Permission Description
 AllowDrag

Specifies whether the panel can be dragged.

 AllowFloat

Specifies whether the panel can be floated.

 AllowHide

Specifies whether the panel can be hidden (closed).

 AllowMaximize

Specifies whether the panel can be maximized using the Maximize method.

By default the context menu for a panel shows these permissions as commands. You can, however, specify whether Permissions are Editable to prevent any change.
 Tab Info
Each NDockingPanel holds information about how it is visualized when displayed as a tab. This information is exposed by the NTabInfo property. Currently the tab info needed contains only ImageIndex and Text properties. You can, however, provide your own custom tab info and assign it to the panel.
See Also