Class RadDock
Represents the major control in the Telerik.WinForms.UI.Docking assembly. Root component for the entire docking framework.
Provides highly extensible and completely transparent transaction-based API for managing a set of tool and document windows registered within the docking framework.
Mimics the user experience found in Microsoft Visual Studio - dockable panes, tabbed documents, document navigation plus much more.
Inherited Members
Namespace: Telerik.WinControls.UI.Docking
Assembly: Telerik.WinControls.RadDock.dll
Syntax
[TelerikToolboxCategory("Containers")]
public class RadDock : RadSplitContainer, INotifyPropertyChanged, ISupportInitializeNotification, ISupportInitialize, IComponentTreeHandler, ILayoutHandler, IPCHost, IAnalyticsProvider, ILoadObsoleteDockingManagerXml, IMessageListener
Constructors
RadDock()
Fields
DockSplitContainerThemeClassName
Declaration
public const string DockSplitContainerThemeClassName = "DockSplitContainer"
Field Value
System.String
|
Properties
ActiveFloatingWindows
Gets a read-only collection of all active floating windows managed by this RadDock instance.
Declaration
public ReadOnlyCollection<FloatingWindow> ActiveFloatingWindows { get; }
Property Value
System.Collections.ObjectModel.ReadOnlyCollection<FloatingWindow>
|
Remarks
This property provides access to all floating windows that contain valid dock windows. Floating windows that are disposed or don't contain valid dock windows are filtered out. This collection is useful for operations that need to work with only the currently active floating windows.
ActiveWindow
Gets or sets the DockWindow instance, which is currently active (meaning it contains the Keyboard focus).
Declaration
public DockWindow ActiveWindow { get; set; }
Property Value
DockWindow
|
AllowDrop
Gets or sets a value indicating whether the control can accept data that the user drags onto it.
Declaration
public override bool AllowDrop { get; set; }
Property Value
System.Boolean
|
Remarks
This property is hidden from the designer as drag and drop behavior is managed internally by the specialized docking drag-drop service.
AutoDetectMdiChildren
Gets or sets a value indicating whether [auto detect MDI child].
Declaration
public bool AutoDetectMdiChildren { get; set; }
Property Value
System.Boolean
|
AutoHideAnimation
Determines what animation will be used when displaying/hiding auto-hidden windows.
Declaration
public AutoHideAnimateMode AutoHideAnimation { get; set; }
Property Value
AutoHideAnimateMode
|
AutoHideAnimationDuration
Gets or sets the duration of the auto hide window animation. The default value is 200 milliseconds.
Declaration
public int AutoHideAnimationDuration { get; set; }
Property Value
System.Int32
The duration of the auto hide window animation. The default value is 200 milliseconds. |
AutoHidePopup
Gets the popup control used for displaying auto-hide windows.
Declaration
public AutoHidePopup AutoHidePopup { get; }
Property Value
AutoHidePopup
An AutoHidePopup instance that manages the display of auto-hidden windows. |
Remarks
The auto-hide popup is displayed when the user hovers over an auto-hide tab, showing the content of the associated docking window temporarily.
AutoScroll
Gets or sets a value indicating whether the container enables auto-scrolling.
Declaration
public override bool AutoScroll { get; set; }
Property Value
System.Boolean
|
Remarks
This property is hidden from the designer as scrolling behavior is managed internally by the docking framework.
AutoScrollMargin
Gets or sets the margin around the auto-scroll area.
Declaration
public Size AutoScrollMargin { get; set; }
Property Value
System.Drawing.Size
A System.Drawing.Size representing the margin of the auto-scroll area. |
Remarks
This property is hidden from the designer as auto-scrolling behavior is managed internally by the RadDock control.
AutoScrollMinSize
Gets or sets the minimum size of the auto-scroll area.
Declaration
public Size AutoScrollMinSize { get; set; }
Property Value
System.Drawing.Size
A System.Drawing.Size representing the minimum size of the auto-scroll area. |
Remarks
This property is hidden from the designer as auto-scrolling behavior is managed internally by the RadDock control.
AutoSize
Gets or sets whether the edit control is auto-sized
Declaration
public override bool AutoSize { get; set; }
Property Value
System.Boolean
|
Overrides
BackColor
RadDock consists of multiple visual elements and separate settings are provided to customize their appearance. Current BackColor property might be ignored.
Declaration
public override Color BackColor { get; set; }
Property Value
System.Drawing.Color
|
Overrides
Collapsed
Gets or sets a value indicating whether the RadDock is collapsed.
Declaration
public bool Collapsed { get; set; }
Property Value
System.Boolean
|
Remarks
This property is hidden from the designer as collapsing behavior is managed internally by the docking framework. Using this property directly may cause unexpected behavior in the docking layout.
CommandManager
Gets the RadDockCommandManager registered with this RadDock instance.
Declaration
public RadDockCommandManager CommandManager { get; }
Property Value
RadDockCommandManager
|
ContentRectangle
Overrides the content rectangle to add any visible auto-hide tabstrips to the calculations.
Declaration
public override Rectangle ContentRectangle { get; }
Property Value
System.Drawing.Rectangle
|
Overrides
DockingGuidesTemplate
Gets or sets the template, which defines the appearance of the guides displayed upon drag-and-drop operation.
Declaration
public IDockingGuidesTemplate DockingGuidesTemplate { get; set; }
Property Value
IDockingGuidesTemplate
|
DockWindows
Gets a collection with all the currently attached DockWindow instances.
Declaration
public DockWindowCollection DockWindows { get; }
Property Value
DockWindowCollection
|
DocumentManager
Gets the DocumentManager instance that manages all the DockWindow instances which are parented MainDocumentContainer. For a Document is considered either a DocumentWindow instance or a ToolWindow, which current DockState is TabbedDocument.
Declaration
public DocumentManager DocumentManager { get; }
Property Value
DocumentManager
|
DocumentTabsAlignment
Gets or sets the alignment of the TabStripElement in all DocumentTabStrip instances.
Declaration
public TabStripAlignment DocumentTabsAlignment { get; set; }
Property Value
TabStripAlignment
|
DocumentTabsTextOrientation
Gets or sets the text orientation of the TabStripElement in all ToolTabStrip instances.
Declaration
public TabStripTextOrientation DocumentTabsTextOrientation { get; set; }
Property Value
TabStripTextOrientation
|
DocumentTabsVisible
Determines whether the TabStripElement in DocumentTabStrip instances is visible.
Declaration
public bool DocumentTabsVisible { get; set; }
Property Value
System.Boolean
|
DragDropAllowedDockStates
Gets or sets the allowed dock states for a committing drag-and-drop operation.
Declaration
public AllowedDockState DragDropAllowedDockStates { get; set; }
Property Value
AllowedDockState
|
DragDropMode
Gets or sets the mode used by the DragDropService when a drag-and-drop request is made.
Declaration
public DragDropMode DragDropMode { get; set; }
Property Value
DragDropMode
|
Enabled
Declaration
public bool Enabled { get; set; }
Property Value
System.Boolean
|
EnableFloatingWindowSnapping
Determines whether all floating windows' will snap to their edges.
Declaration
public bool EnableFloatingWindowSnapping { get; set; }
Property Value
System.Boolean
|
EnableFloatingWindowTheming
Determines whether all floating windows' frames within the framework will be themed using Telerik's TPF or will be let with their system appearance.
Declaration
public bool EnableFloatingWindowTheming { get; set; }
Property Value
System.Boolean
|
FloatingWindows
Gets a list of the floating windows. Can contain duplicates, empty or hidden toolwindows which are used internally as re-dock targets.
Declaration
public FloatingWindowCollection FloatingWindows { get; }
Property Value
FloatingWindowCollection
|
ForeColor
RadDock consists of multiple visual elements and separate settings are provided to customize their appearance. Current ForeColor property might be ignored.
Declaration
public override Color ForeColor { get; set; }
Property Value
System.Drawing.Color
|
Overrides
GuidToNameMappings
Gets a collection of mappings between GUIDs and window names used during serialization and deserialization.
Declaration
public GuidToNameMappingCollection GuidToNameMappings { get; }
Property Value
GuidToNameMappingCollection
|
Remarks
This collection maintains the associations between window GUIDs and their names, which is critical for correctly restoring windows during deserialization.
The GUID-to-name mappings ensure that windows can be identified consistently across serialization operations, even if window names change. This is particularly important when loading layouts in applications where window instances may be recreated with different names but should still be recognized as the same logical windows.
IsDragging
Gets a value indicating whether a drag-and-drop operation is currently in progress.
Declaration
public bool IsDragging { get; }
Property Value
System.Boolean
|
Remarks
This property checks the state of the DragDropService to determine if a window or tab is currently being dragged by the user. This can be useful for controlling UI behavior during drag operations or for preventing certain actions while dragging is in progress.
IsInTransactionBlock
Determines whether the RadDock is currently in a transaction (internal operation).
Declaration
public bool IsInTransactionBlock { get; }
Property Value
System.Boolean
|
Item[String]
Gets DockWindow instance with the corresponding Name.
Declaration
public DockWindow this[string dockWindowName] { get; }
Parameters
System.String
dockWindowName
|
Property Value
DockWindow
DockWindow instance with matching Name. Null (Nothing in VB.NET) otherwise. |
LayoutStrategyType
Gets or sets the Type to be used when a new RadSplitContainer instance is internally created and a layout strategy is initialized for it. Allows plugging of completely custom layout behavior.
Declaration
public Type LayoutStrategyType { get; set; }
Property Value
System.Type
|
MainDocumentContainer
Gets or sets the document container for this RadDock instance. This property is used primarily for serialization purposes and is not intended to be used directly by code.
Declaration
public DocumentContainer MainDocumentContainer { get; set; }
Property Value
DocumentContainer
|
MainDocumentContainerVisible
Determines whether the main document container is visible.
Declaration
public bool MainDocumentContainerVisible { get; set; }
Property Value
System.Boolean
|
MdiChildren
Gets an array with all the standard Forms added as TabbedDocument to this RadDock instance.
Declaration
public Form[] MdiChildren { get; }
Property Value
System.Windows.Forms.Form[]
|
MdiChildrenDockType
Gets or sets a value indicating dock type of MDI child host windows added to RadDock.
Declaration
public DockType MdiChildrenDockType { get; set; }
Property Value
DockType
|
Padding
Declaration
public Padding Padding { get; set; }
Property Value
System.Windows.Forms.Padding
|
QuickNavigatorSettings
ReleaseMemoryOnClose
Declaration
public bool ReleaseMemoryOnClose { get; set; }
Property Value
System.Boolean
|
RootContainer
Gets the root split container for the RadDock control hierarchy.
Declaration
public RadSplitContainer RootContainer { get; }
Property Value
RadSplitContainer
A RadSplitContainer that represents the root container in the hierarchy. |
Remarks
This property is hidden from the designer as the container hierarchy is managed internally by the docking framework.
SerializableAutoHideContainer
Gets an instance of DockAutoHideSerializationContainer that contains information about auto-hidden windows which have been set up through designer or xml file. This nethod is no intended for use directly from your code.
Declaration
public DockAutoHideSerializationContainer SerializableAutoHideContainer { get; }
Property Value
DockAutoHideSerializationContainer
|
SerializableFloatingWindows
Gets an instance of FloatingWindowList that contains information about floating windows which have been set up through designer or xml file. This nethod is no intended for use directly from your code.
Declaration
public FloatingWindowList SerializableFloatingWindows { get; }
Property Value
FloatingWindowList
|
ShowDocumentCloseButton
Determines whether DocumentTabStrip instances will display a Close Button next to each item.
Declaration
public bool ShowDocumentCloseButton { get; set; }
Property Value
System.Boolean
|
ShowDocumentPinButton
Determines whether DocumentTabStrip instances will display a Pin Button next to each item.
Declaration
public bool ShowDocumentPinButton { get; set; }
Property Value
System.Boolean
|
ShowToolCloseButton
Determines whether ToolTabStrip instances will display Close Button next to each item.
Declaration
public bool ShowToolCloseButton { get; set; }
Property Value
System.Boolean
|
SingleScreen
Gets or sets a value indicating whether the RadDock control behavior and layout apply only to primary screen.
Declaration
public bool SingleScreen { get; set; }
Property Value
System.Boolean
|
Site
Declaration
public override ISite Site { get; set; }
Property Value
System.ComponentModel.ISite
|
Overrides
SizeInfo
Gets size information for the RadDock panel.
Declaration
public SplitPanelSizeInfo SizeInfo { get; }
Property Value
SplitPanelSizeInfo
A SplitPanelSizeInfo object containing sizing information for the panel. |
Remarks
This property is hidden from the designer as sizing is managed internally by the docking framework.
SplitContainer
Gets the parent split container of this RadDock control.
Declaration
public RadSplitContainer SplitContainer { get; }
Property Value
RadSplitContainer
A RadSplitContainer that is the parent of this control. |
Remarks
This property is hidden from the designer as the relationship between dock and split containers is managed internally by the docking framework.
SplitPanels
Gets the collection of split panels contained in this RadDock control.
Declaration
public SplitPanelCollection SplitPanels { get; }
Property Value
SplitPanelCollection
A SplitPanelCollection containing the split panels. |
Remarks
This property is hidden from the designer and should not be used directly. The RadDock control manages its panels internally.
SplitterWidth
Declaration
public override int SplitterWidth { get; set; }
Property Value
System.Int32
|
Overrides
TabStripsLayout
Gets the layout panel that contains the tab strips for the docking windows.
Declaration
public DockLayoutPanel TabStripsLayout { get; }
Property Value
DockLayoutPanel
A DockLayoutPanel that manages the layout of tab strips in the docking framework. |
Text
This property is not relevant for this class.
Declaration
public override string Text { get; set; }
Property Value
System.String
|
Overrides
ThemeClassName
Gets or sets the theme class name used for applying visual styles to this control.
Declaration
public override string ThemeClassName { get; set; }
Property Value
System.String
|
Overrides
Remarks
The theme class name is used by the theming engine to identify which visual styles should be applied to this control. For RadDock, this property always returns the full name of the RadDock class, ensuring consistent styling across all instances.
This property is overridden to provide a fixed value and should not be modified directly.
ToolTabsAlignment
Gets or sets the alignment of the TabStripElement in all ToolTabStrip instances.
Declaration
public TabStripAlignment ToolTabsAlignment { get; set; }
Property Value
TabStripAlignment
|
ToolTabsTextOrientation
Gets or sets the text orientation of the TabStripElement in all ToolTabStrip instances.
Declaration
public TabStripTextOrientation ToolTabsTextOrientation { get; set; }
Property Value
TabStripTextOrientation
|
ToolTabsVisible
Determines whether the TabStripElement in ToolTabStrip instances is visible.
Declaration
public bool ToolTabsVisible { get; set; }
Property Value
System.Boolean
|
ToolWindowInsertOrder
Gets or sets the insert order to be used when adding dock windows to a ToolTabStrip.
Declaration
public DockWindowInsertOrder ToolWindowInsertOrder { get; set; }
Property Value
DockWindowInsertOrder
|
XmlSerializationInfo
Gets the serialization info for RadDock used by Save/Load loyout methods to persist grid settings to/from XML. By default, or when set to null the ComponentXmlSerializationInfo provided by GetDefaultXmlSerializationInfo() will be used.
Declaration
public ComponentXmlSerializationInfo XmlSerializationInfo { get; set; }
Property Value
ComponentXmlSerializationInfo
|
Methods
ActivateMdiChild(Form)
Activates the MDI child of a form.
Declaration
public void ActivateMdiChild(Form form)
Parameters
System.Windows.Forms.Form
form
The child form to activate. |
ActivateWindow(DockWindow)
Activates the specified DockWindow and gives it the keyboard focus.
Declaration
public bool ActivateWindow(DockWindow window)
Parameters
DockWindow
window
The DockWindow to activate. If null, no window will be activated. |
Returns
System.Boolean
True if the window was successfully activated and has focus; otherwise, false. |
Remarks
This method activates the specified window by:
- Making it the active window in the RadDock control
- Ensuring it's visible (sliding out if auto-hidden)
- Giving it keyboard focus
- Updating its visual state to appear active
- Raising appropriate ActiveWindowChanging and ActiveWindowChanged events
This method is equivalent to calling ActivateWindow(window, false).
ActivateWindow(DockWindow, Boolean)
Activates the specified window and gives it the keyboard focus.
Declaration
protected virtual bool ActivateWindow(DockWindow window, bool forceNotify)
Parameters
DockWindow
window
|
System.Boolean
forceNotify
True to force ActiveWindowChanging and ActiveWindowChanged notifications, false otherwise. Sometimes a transaction may change the current active window several times and the method needs to know when to raise the notifications. |
Returns
System.Boolean
|
AddDocument(DockWindow)
Adds the specified DockWindow instance to the main document tab strip.
Declaration
public void AddDocument(DockWindow dockWindow)
Parameters
DockWindow
dockWindow
The dock window. |
AddDocument(DockWindow, DockPosition)
Adds the the specified DockWindow instance at the specified dock position, aligned with the main document tabstrip.
Declaration
public void AddDocument(DockWindow dockWindow, DockPosition position)
Parameters
DockWindow
dockWindow
The dock window. |
DockPosition
position
The desired dock position. |
AddDocument(DockWindow, DockWindow, DockPosition)
Adds the the specified DockWindow instance to the specified DocumentTabStrip instance.
Declaration
public void AddDocument(DockWindow dockWindow, DockWindow target, DockPosition position)
Parameters
DockWindow
dockWindow
The dock window. |
DockWindow
target
The target of the dock opeation. |
DockPosition
position
The desired dock position. |
AddDocument(DockWindow, DocumentTabStrip, DockPosition)
Adds the specified DockWindow instance to a new DocumentTabStrip instance.
Declaration
public void AddDocument(DockWindow dockWindow, DocumentTabStrip tabStrip, DockPosition position)
Parameters
DockWindow
dockWindow
The dock window. |
DocumentTabStrip
tabStrip
The DocumentTabStrip, which is the target of the operation. |
DockPosition
position
The position. |
AddDocuments(DockWindow[], DocumentTabStrip, DockPosition)
Adds a collection of DockWindows to a new DocumentTabStrip instance.
Declaration
public void AddDocuments(DockWindow[] dockWindows, DocumentTabStrip tabStrip, DockPosition position)
Parameters
DockWindow[]
dockWindows
The dock windows. |
DocumentTabStrip
tabStrip
The DocumentTabStrip, which is the target of the operation. |
DockPosition
position
The position. |
ApplySplitterWidth(Int32)
Declaration
public override void ApplySplitterWidth(int splitterWidth)
Parameters
System.Int32
splitterWidth
|
Overrides
AutoHideWindow(DockWindow)
Makes the specified DockWindow auto-hidden along an edge of the docking layout.
Declaration
public void AutoHideWindow(DockWindow window)
Parameters
DockWindow
window
The DockWindow instance to auto-hide. |
Remarks
This method changes the dock state of the window to auto-hide, making it collapse to a tab along an edge of the docking layout. When auto-hidden, the window will slide out when the user hovers over or clicks its tab.
If the window is part of a tab strip, the entire tab strip will be auto-hidden. The auto-hide position (Left, Right, Top, Bottom) is determined based on the window's current position in the layout.
AutoHideWindows(IEnumerable<DockWindow>, AutoHidePosition)
Makes the specified collection of DockWindow instances auto-hidden at a specific edge.
Declaration
public void AutoHideWindows(IEnumerable<DockWindow> windows, AutoHidePosition position)
Parameters
System.Collections.Generic.IEnumerable<DockWindow>
windows
The collection of DockWindow instances to auto-hide. |
AutoHidePosition
position
The edge position (Left, Right, Top, Bottom) at which the windows should be auto-hidden. |
Remarks
This method changes the dock state of all specified windows to auto-hide, making them collapse to tabs along the specified edge of the docking layout. When auto-hidden, the windows will slide out when the user hovers over or clicks their tabs.
All windows specified will be grouped together in the auto-hide area, with each window represented by a tab.
BeginInit()
Signals the object that initialization is beginning.
Declaration
public override void BeginInit()
Overrides
Remarks
This method suspends certain operations like layout updates and event raising during the initialization phase to improve performance and prevent errors from incomplete state.
BeginTransactionBlock()
Opens a transaction (batch) operation. This is used by the framework to indicate some lengthy operations, during which no updates should be performed.
Declaration
public void BeginTransactionBlock()
BeginTransactionBlock(Boolean)
Opens a transaction (batch) operation. This is used by the framework to indicate some lengthy operations, during which no updates should be performed.
Declaration
public void BeginTransactionBlock(bool saveActiveWindow)
Parameters
System.Boolean
saveActiveWindow
|
BeginUpdate()
Begins an update operation. Internally used by the transaction mechanism.
Declaration
public void BeginUpdate()
CallOnControlTreeChanged(ControlTreeChangedEventArgs)
Calls the OnControlTreeChanged method. This method is used internally.
Declaration
public virtual void CallOnControlTreeChanged(ControlTreeChangedEventArgs args)
Parameters
ControlTreeChangedEventArgs
args
|
CanChangeWindowState(DockWindow, DockState)
Determines whether the provided dock state may be applied to the specified DockWindow.
Declaration
public bool CanChangeWindowState(DockWindow window, DockState state)
Parameters
DockWindow
window
|
DockState
state
|
Returns
System.Boolean
|
CanChangeWindowState(DockWindow, DockState, Boolean)
Determines whether the specified window's DockState value can be changed to the specified new one.
Declaration
protected virtual bool CanChangeWindowState(DockWindow window, DockState state, bool raiseChanging)
Parameters
DockWindow
window
The window, which should be examined. |
DockState
state
The new target state. |
System.Boolean
raiseChanging
True to raise DockStateChanging notification, false otherwise. |
Returns
System.Boolean
True if the state can be changed, false otherwise. |
CleanUp()
Performs a clean-up pass which removes all unnecessary internally created split panels and/or collapses or disposes them.
Declaration
public void CleanUp()
CloseAllWindows()
Calls the Close method for all currently registered windows, using each window's CloseAction.
Declaration
public bool CloseAllWindows()
Returns
System.Boolean
[true] if all windows were successfully closed, [false] otherwise |
CloseAutoHidePopup()
Closes the popup of the currently opened auto-hide window.
Declaration
public void CloseAutoHidePopup()
CloseWindow(DockWindow)
Removes or hides the specified window based on its CloseAction property.
Declaration
public void CloseWindow(DockWindow window)
Parameters
DockWindow
window
The DockWindow instance to close. |
Remarks
This method closes the specified window according to its CloseAction property:
- CloseAction.Close: Removes the window from the layout without disposing it
- CloseAction.CloseAndDispose: Removes the window and disposes it
- CloseAction.Hide: Hides the window but keeps it registered with the docking manager
If the window is already hidden (DockState.Hidden) and its CloseAction is Hide, this method does nothing.
CloseWindows(IEnumerable<DockWindow>)
Removes or hides the specified collection of windows based on their CloseAction properties.
Declaration
public void CloseWindows(IEnumerable<DockWindow> windows)
Parameters
System.Collections.Generic.IEnumerable<DockWindow>
windows
The collection of DockWindow instances to close. |
Remarks
This method closes each window in the collection according to its CloseAction property:
- CloseAction.Close: Removes the window from the layout without disposing it
- CloseAction.CloseAndDispose: Removes the window and disposes it
- CloseAction.Hide: Hides the window but keeps it registered with the docking manager
The operation is performed as a single transaction, ensuring consistent behavior and proper events. Before closing each window, a DockWindowClosing event is raised, which can be handled to cancel the operation for specific windows.
CommitTransaction(RadDockTransaction)
Commits the specified transaction.
Declaration
protected virtual void CommitTransaction(RadDockTransaction transaction)
Parameters
RadDockTransaction
transaction
|
Contains(String)
Determines whether a DockWindow instance with the specified name is registered with this RadDock instance.
Declaration
public bool Contains(string name)
Parameters
System.String
name
|
Returns
System.Boolean
|
Contains(DockWindow)
Determines whether the specified DockWindow is registered with this RadDock instances.
Declaration
public bool Contains(DockWindow dockWindow)
Parameters
DockWindow
dockWindow
|
Returns
System.Boolean
|
CreateChildItems(RadElement)
Declaration
protected override void CreateChildItems(RadElement parent)
Parameters
RadElement
parent
|
Overrides
CreateDefaultTabStrip(DockType)
Creates and returns the default DockTabStrip for a given DockType.
Declaration
public DockTabStrip CreateDefaultTabStrip(DockType type)
Parameters
DockType
type
The DockType that determines what kind of tab strip to create. DockType.Document creates a DocumentTabStrip, while any other value creates a ToolTabStrip. |
Returns
DockTabStrip
A new instance of DockTabStrip appropriate for the specified dock type, with default properties applied based on the dock type. |
Remarks
This method creates either a DocumentTabStrip or ToolTabStrip based on the specified type parameter. The created tab strip is properly initialized with DPI scaling and other settings but is not automatically added to the dock layout - you need to add it manually to the appropriate container.
CreateLayoutStrategy()
Creates new SplitContainerLayoutStrategy instance. Allows inheritors to provide custom layout strategy implementation.
Declaration
protected virtual SplitContainerLayoutStrategy CreateLayoutStrategy()
Returns
SplitContainerLayoutStrategy
A new instance of SplitContainerLayoutStrategy that will be used for layout calculations. |
Remarks
This method creates a layout strategy based on the layoutStrategyType field. If instantiation fails or layoutStrategyType is null, it creates a default SplitContainerLayoutStrategy instance. The layout strategy is responsible for calculating the size and position of panels within split containers.
CreateXmlWriterSettings()
Creates the core XmlWritterSettings to be used by the serialization manager.
Declaration
protected virtual XmlWriterSettings CreateXmlWriterSettings()
Returns
System.Xml.XmlWriterSettings
|
DisplayQuickNavigator()
DisplayWindow(DockWindow)
Displays the specified window if it was previously hidden, restoring it to its previous dock state.
Declaration
public void DisplayWindow(DockWindow window)
Parameters
DockWindow
window
The DockWindow instance to display. |
Remarks
This method restores a hidden window to its previous dock state. If the window was not previously hidden or is not registered with this RadDock instance, this method has no effect.
The window will be displayed in the same location it was in before being hidden, whether that was docked, floating, auto-hidden, or as a tabbed document.
DisplayWindows(IEnumerable<DockWindow>)
Displays the provided collection of dock windows if they were previously hidden and are registered with this RadDock instance.
Declaration
public void DisplayWindows(IEnumerable<DockWindow> windows)
Parameters
System.Collections.Generic.IEnumerable<DockWindow>
windows
The collection of DockWindow instances to display. |
Remarks
This method restores hidden windows to their previous dock states. Only windows that meet all of the following criteria are affected:
- The window is registered with this RadDock instance
- The window is currently hidden (DockState.Hidden)
- The window has a valid previous dock state to restore to
Each window will be displayed in the same location it was in before being hidden, whether that was docked, floating, auto-hidden, or as a tabbed document.
Dispose(Boolean)
Releases the unmanaged resources used by the RadDock and optionally releases the managed resources.
Declaration
protected override void Dispose(bool disposing)
Parameters
System.Boolean
disposing
|
Overrides
Remarks
This method cleans up all resources associated with the docking framework, including command managers, document managers, MDI controllers, and floating windows.
DockControl(Control, DockPosition)
Registers the specified control as part of the docking framework.
Declaration
public HostWindow DockControl(Control control, DockPosition position)
Parameters
System.Windows.Forms.Control
control
|
DockPosition
position
|
Returns
HostWindow
|
DockControl(Control, DockPosition, DockType)
Registers the specified control as part of the docking framework.
Declaration
public HostWindow DockControl(Control control, DockPosition position, DockType dockType)
Parameters
System.Windows.Forms.Control
control
|
DockPosition
position
|
DockType
dockType
|
Returns
HostWindow
|
DockControl(Control, DockTabStrip, DockPosition)
Registers the specified control as part of the docking framework.
Declaration
public HostWindow DockControl(Control control, DockTabStrip dockAnchor, DockPosition position)
Parameters
System.Windows.Forms.Control
control
|
DockTabStrip
dockAnchor
|
DockPosition
position
|
Returns
HostWindow
|
DockControl(Control, DockTabStrip, DockPosition, DockType)
Registers the specified control as part of the docking framework.
Declaration
public HostWindow DockControl(Control control, DockTabStrip dockAnchor, DockPosition position, DockType dockType)
Parameters
System.Windows.Forms.Control
control
|
DockTabStrip
dockAnchor
|
DockPosition
position
|
DockType
dockType
|
Returns
HostWindow
|
DockControl(Control, DockWindow, DockPosition)
Registers the specified control as part of the docking framework.
Declaration
public HostWindow DockControl(Control control, DockWindow target, DockPosition position)
Parameters
System.Windows.Forms.Control
control
|
DockWindow
target
|
DockPosition
position
|
Returns
HostWindow
|
DockControl(Control, DockWindow, DockPosition, DockType)
Registers the specified control as part of the docking framework.
Declaration
public HostWindow DockControl(Control control, DockWindow target, DockPosition position, DockType dockType)
Parameters
System.Windows.Forms.Control
control
|
DockWindow
target
|
DockPosition
position
|
DockType
dockType
|
Returns
HostWindow
|
DockWindow(DockWindow, DockPosition)
Registers the specified DockWindow instance and docks it at the desired position.
Declaration
public void DockWindow(DockWindow dockWindow, DockPosition position)
Parameters
DockWindow
dockWindow
The window to dock. |
DockPosition
position
The position where the window should be docked (Top, Bottom, Left, Right, Fill). |
Remarks
This method registers the window with the docking manager and positions it according to the specified dock position. The window will be docked relative to the main container.
DockWindow(DockWindow, DockWindow, DockPosition)
Registers the specified DockWindow instance and docks it at the desired position, using the provided target window as an anchor.
Declaration
public void DockWindow(DockWindow dockWindow, DockWindow target, DockPosition position)
Parameters
DockWindow
dockWindow
The window to dock. |
DockWindow
target
The target window to use as an anchor for the docking operation. If null, the main container is used. |
DockPosition
position
The position relative to the target where the window should be docked (Top, Bottom, Left, Right, Fill). |
Remarks
This method registers the window with the docking manager and positions it according to the specified dock position, relative to the target window. If the target is null, the main container is used as the reference point.
DockWindow(DockWindow, SplitPanel, DockPosition)
Registers the specified DockWindow instance and docks it at the desired position, using the provided SplitPanel as an anchor.
Declaration
public void DockWindow(DockWindow window, SplitPanel dockAnchor, DockPosition position)
Parameters
DockWindow
window
|
SplitPanel
dockAnchor
Any split panel instance that resides |
DockPosition
position
|
EndInit()
Signals the object that initialization is complete.
Declaration
public override void EndInit()
Overrides
Remarks
This method is called at the end of initialization and ensures that all components of the RadDock framework are properly initialized and registered, including floating windows, auto-hide windows, and docked windows.
EndTransactionBlock()
Ends the current transaction block and commits all pending transactions.
Declaration
public void EndTransactionBlock()
Remarks
This method decrements the transaction block counter. When the counter reaches zero, all pending transactions are executed, and normal layout operations are resumed. Each call to EndTransactionBlock should correspond to a previous call to BeginTransactionBlock.
EndUpdate()
Ends a BeginUpdate block.
Declaration
public void EndUpdate()
EndUpdate(Boolean)
Ends a BeginUpdate block and optionally performs layout update.
Declaration
public void EndUpdate(bool update)
Parameters
System.Boolean
update
Specifies whether to perform layout operations after ending the update block. When true, layout operations are performed. When false, layout remains suspended. |
Remarks
Use this method to end an update operation that was started with BeginUpdate. The update parameter allows control over whether layout is immediately performed or remains suspended.
EnqueueTransaction(RadDockTransaction)
Adds a transaction operation to the current transaction block.
Declaration
public void EnqueueTransaction(RadDockTransaction transaction)
Parameters
RadDockTransaction
transaction
The transaction to add to the current block. Must not be null. |
Remarks
This method adds a dock operation to the current transaction. Transactions are executed as a batch when the transaction block is closed. A transaction block must be opened with BeginTransactionBlock before this method can be called.
Exceptions
System.ArgumentNullException
Thrown when the transaction parameter is null. |
System.ArgumentException
Thrown when there is no active transaction block. |
EnsureInitialized()
Ensures that the RadDock control is properly initialized.
Declaration
public void EnsureInitialized()
Remarks
This method is used internally by the docking framework to make sure all components are properly connected and registered. It initializes the document container, registers docked windows, auto-hide windows, tabbed documents, and floating windows.
EnumFrameworkControls<T>()
Enumerates all currently alive T instances available within the framework.
Declaration
public IEnumerable<T> EnumFrameworkControls<T>()
where T : Control
Returns
System.Collections.Generic.IEnumerable<T>
|
Type Parameters
T
|
FloatToolTabStrip(ToolTabStrip, Rectangle)
Makes the specified tool tab strip floating (detached in its own window).
Declaration
public void FloatToolTabStrip(ToolTabStrip strip, Rectangle bounds)
Parameters
ToolTabStrip
strip
The ToolTabStrip to make floating. |
System.Drawing.Rectangle
bounds
The desired floating bounds. Pass Rectangle.Empty to set the default bounds based on the strip's preferred size. |
Remarks
This method detaches the entire tool tab strip, including all contained windows, from its current position in the docking layout and displays it in a separate floating window with the specified bounds. The tab structure is preserved in the floating window - all windows that were in the tab strip remain grouped together.
FloatWindow(DockWindow)
Makes the specified window floating (detached in its own window).
Declaration
public void FloatWindow(DockWindow window)
Parameters
DockWindow
window
The DockWindow instance to make floating. |
Remarks
This method detaches the window from its current position in the docking layout and displays it in a separate floating window. It uses default bounds for the new floating window. To specify the bounds of the floating window, use the overload that accepts a Rectangle parameter.
FloatWindow(DockWindow, Rectangle)
Makes the specified window floating (detached in its own window), using the provided bounds.
Declaration
public void FloatWindow(DockWindow window, Rectangle bounds)
Parameters
DockWindow
window
The DockWindow instance to make floating. |
System.Drawing.Rectangle
bounds
The desired floating bounds. Pass Rectangle.Empty to set the default bounds based on the window's preferred size. |
Remarks
This method detaches the window from its current position in the docking layout and displays it in a separate floating window with the specified bounds. The DockType of the container in the floating window is automatically determined based on whether the window is a DocumentWindow or not.
FloatWindows(IEnumerable<DockWindow>, Rectangle)
Makes the specified collection of windows floating (detached in a single window), using the provided bounds.
Declaration
public void FloatWindows(IEnumerable<DockWindow> windows, Rectangle bounds)
Parameters
System.Collections.Generic.IEnumerable<DockWindow>
windows
The collection of DockWindow instances to make floating together. |
System.Drawing.Rectangle
bounds
The desired floating bounds. Pass Rectangle.Empty to set the default bounds based on the windows' preferred sizes. |
Remarks
This method detaches all the specified windows from their current positions in the docking layout and displays them together in a single floating window with the specified bounds. All windows will be arranged in a tab strip within the floating window. This overload uses DockType.ToolWindow as the container type. For document windows, use the overload that accepts a DockType parameter.
FloatWindows(IEnumerable<DockWindow>, Rectangle, DockType)
Makes the specified windows floating (detached in a single window), using the provided bounds and container type.
Declaration
public void FloatWindows(IEnumerable<DockWindow> windows, Rectangle bounds, DockType containerType)
Parameters
System.Collections.Generic.IEnumerable<DockWindow>
windows
The collection of DockWindow instances to make floating together. |
System.Drawing.Rectangle
bounds
The desired floating bounds. Pass Rectangle.Empty to set the default bounds based on the windows' preferred sizes. |
DockType
containerType
The type of the container inside the floating form - DockType.ToolWindow or DockType.Document. |
Remarks
This method detaches all the specified windows from their current positions in the docking layout and displays them together in a single floating window with the specified bounds. All windows will be arranged in a tab strip of the specified type within the floating window. The container type determines the appearance and behavior of the tab strip in the floating window.
FlushTransactions()
Commits all pending transactions without exitting the transaction block.
Declaration
public void FlushTransactions()
GetAutoHideTab(DockWindow)
Gets the tab strip item associated with an auto-hidden dock window.
Declaration
public TabStripItem GetAutoHideTab(DockWindow dockWindow)
Parameters
DockWindow
dockWindow
The dock window for which to find the auto-hide tab. |
Returns
TabStripItem
The TabStripItem representing the auto-hide tab for the specified window, or null if the window is not in auto-hide mode or doesn't have an associated tab. |
Remarks
Auto-hide tabs are displayed along the edges of the docking container and allow users to temporarily show windows that are in auto-hide mode.
GetAutoHideTabStrip(AutoHidePosition)
Gets the auto hide tab strip.
Declaration
public RadPageViewStripElement GetAutoHideTabStrip(AutoHidePosition position)
Parameters
AutoHidePosition
position
The edge position of the auto-hide strip to retrieve. |
Returns
RadPageViewStripElement
A RadPageViewStripElement representing the tab strip at the specified position. |
Remarks
The tab strip contains the tabs that represent auto-hidden windows. When the user hovers over one of these tabs, the corresponding window is temporarily displayed.
GetDefaultDocumentTabStrip(Boolean)
Gets the default DocumentTabStrip instance, used to add documents without explicitly specified dock target.
Declaration
public DocumentTabStrip GetDefaultDocumentTabStrip(bool createNew)
Parameters
System.Boolean
createNew
True to create a new DocumentTabStrip instance and add it to the document container. |
Returns
DocumentTabStrip
|
GetDefaultXmlSerializationInfo()
Gets the default serialization information for RadDock used by Save/Load layout methods to persist docking settings to/from XML.
Declaration
public virtual ComponentXmlSerializationInfo GetDefaultXmlSerializationInfo()
Returns
ComponentXmlSerializationInfo
A ComponentXmlSerializationInfo object containing the default serialization settings for RadDock. |
Remarks
You can use the serialization information to customize which properties of RadDock and related objects are included in or excluded from XML serialization. This allows you to control exactly what aspects of the docking layout are persisted.
To customize serialization, you can:
- Override this method in a derived class to return modified serialization information
- Modify the XmlSerializationInfo property directly
Common customizations include:
- Excluding specific properties that shouldn't be persisted
- Adding custom properties that should be persisted
- Changing serialization behavior for certain object types
GetHostWindow(Control)
Get the host window for Control instance docked with DockControl method or for MDI children Form object
Declaration
public HostWindow GetHostWindow(Control control)
Parameters
System.Windows.Forms.Control
control
|
Returns
HostWindow
found HostWindow instance or null |
GetNextDocumentStrip(DockWindow)
Gets the next document tab strip, regarding the specified DockWindow. The window should be in TabbedDocument state for the method to work.
Declaration
public DocumentTabStrip GetNextDocumentStrip(DockWindow window)
Parameters
DockWindow
window
|
Returns
DocumentTabStrip
|
GetPreviousDocumentStrip(DockWindow)
Gets the previous document tab strip, regarding the specified DockWindow. The window should be in TabbedDocument state for the method to work.
Declaration
public DocumentTabStrip GetPreviousDocumentStrip(DockWindow window)
Parameters
DockWindow
window
|
Returns
DocumentTabStrip
|
GetService<T>()
Retrieves the currently registered service by the specified type.
Declaration
public T GetService<T>()
where T : RadDockService
Returns
T
The registered service of type T, or null if no such service is registered. |
Type Parameters
T
The type of service to retrieve. Must be a subclass of RadDockService. |
Remarks
This method searches all registered services for one that is of the specified type T. It returns the first matching service found, or null if no service of type T is registered. This method is useful when you know what kind of service you need but don't know its key.
GetService<T>(Int32)
Retrieves the currently registered service by the provided key.
Declaration
protected T GetService<T>(int key)
where T : RadDockService
Parameters
System.Int32
key
The key that identifies the service, typically a value from ServiceConstants. |
Returns
T
The registered service of type T associated with the specified key, or null if no such service is registered. |
Type Parameters
T
The type of service to retrieve. Must be a subclass of RadDockService. |
Remarks
This method retrieves a service using its key. All predefined service keys can be found in the ServiceConstants class. It returns the service cast to type T, or null if either no service is registered with the key or the registered service is not of type T.
GetSplitterElementAtPoint(Point)
Declaration
public override SplitterElement GetSplitterElementAtPoint(Point clientPoint)
Parameters
System.Drawing.Point
clientPoint
|
Returns
SplitterElement
|
Overrides
GetWindow<T>(String)
Gets DockWindow instance with the corresponding Name by the specified type.
Declaration
public T GetWindow<T>(string dockWindowName)
where T : DockWindow
Parameters
System.String
dockWindowName
|
Returns
T
DockWindow instance with matching Name. Null (Nothing in VB.NET) otherwise. |
Type Parameters
T
|
GetWindows(Type[])
Gets the windows by the specified types.
Declaration
public IEnumerable<DockWindow> GetWindows(params Type[] types)
Parameters
System.Type[]
types
The types of the windows to get. |
Returns
System.Collections.Generic.IEnumerable<DockWindow>
A collection of DockWindow instances matching the specified types. If no types are specified, returns all windows. |
Remarks
This method filters windows based on their type. It can be used to retrieve specific window types, such as tool windows or document windows, by providing the corresponding type parameters.
GetWindows<T>()
Gets the windows by the specified type.
Declaration
public IEnumerable<T> GetWindows<T>()
where T : DockWindow
Returns
System.Collections.Generic.IEnumerable<T>
|
Type Parameters
T
|
IsNameAvailable(String)
Declaration
protected virtual bool IsNameAvailable(string name)
Parameters
System.String
name
|
Returns
System.Boolean
|
LoadFromXml(Stream, Boolean)
Loads the docking layout configuration from an XML stream.
Declaration
public void LoadFromXml(Stream stream, bool clearDocking = false)
Parameters
System.IO.Stream
stream
The stream containing the XML layout data. The stream must be readable and its position will be reset to the beginning. |
System.Boolean
clearDocking
When set to |
Remarks
This method automatically detects whether the XML in the stream was created with the legacy DockingManager or with the current RadDock, and adapts its loading strategy accordingly. This enables backward compatibility with layouts saved by older versions.
The XML stream should contain information about window positions, sizes, dock states, and relationships between windows. Windows that need to be restored must already be registered with this RadDock instance or they will be ignored during loading.
This overload is useful when the layout is stored in memory or in a database rather than in a file. To save the current layout to a stream, use the SaveToXml(Stream) method.
LoadFromXml(TextReader, Boolean)
Loads the docking layout configuration from a TextReader. Note that this is a new method and does not support loading xml that was written using DockingManager.
Declaration
public void LoadFromXml(TextReader textReader, bool clearDocking = false)
Parameters
System.IO.TextReader
textReader
The text reader. |
System.Boolean
clearDocking
if set to |
LoadFromXml(String, Boolean)
Loads the docking layout configuration from an XML file.
Declaration
public void LoadFromXml(string fileName, bool clearDocking = false)
Parameters
System.String
fileName
The path to the XML file containing the saved layout. |
System.Boolean
clearDocking
When set to |
Remarks
This method automatically detects whether the XML file was created with the legacy DockingManager or with the current RadDock, and adapts its loading strategy accordingly. This enables backward compatibility with layouts saved by older versions.
The XML file contains information about window positions, sizes, dock states, and relationships between windows. Windows that need to be restored must already be registered with this RadDock instance or they will be ignored during loading.
To save the current layout to an XML file, use the SaveToXml method and any of its overloads.
LoadFromXmlCore(XmlReader, Boolean, Boolean)
Overrwrite this method to change the loading of docking layout configuration.
Declaration
protected virtual void LoadFromXmlCore(XmlReader reader, bool oldXmlFormat, bool clearDocking = false)
Parameters
System.Xml.XmlReader
reader
The XmlReader instance that will be used to load the layoiut configuration. |
System.Boolean
oldXmlFormat
if set to |
System.Boolean
clearDocking
if set to |
MoveToNextDocumentTabStrip(DockWindow)
Move DockWindow to next document tab strip if exist when DockWindow is in document mode
Declaration
public bool MoveToNextDocumentTabStrip(DockWindow dockWindow)
Parameters
DockWindow
dockWindow
|
Returns
System.Boolean
|
MoveToPreviousDocumentTabStrip(DockWindow)
Move DockWindow to previuos document tab strip if exist when DockWindow is in document mode
Declaration
public bool MoveToPreviousDocumentTabStrip(DockWindow dockWindow)
Parameters
DockWindow
dockWindow
|
Returns
System.Boolean
|
OnActiveWindowChanged(DockWindowEventArgs)
Raises the ActiveWindowChanged event.
Declaration
protected virtual void OnActiveWindowChanged(DockWindowEventArgs e)
Parameters
DockWindowEventArgs
e
|
OnActiveWindowChanging(DockWindowCancelEventArgs)
Raises the ActiveWindowChanging event.
Declaration
protected virtual void OnActiveWindowChanging(DockWindowCancelEventArgs e)
Parameters
DockWindowCancelEventArgs
e
|
OnAutoHideButtonClicked(ToolTabStrip)
An Auto-hide button click notification, received from a registered ToolTabStrip.
Declaration
protected virtual void OnAutoHideButtonClicked(ToolTabStrip strip)
Parameters
ToolTabStrip
strip
|
OnAutoHideWindowDisplayed(DockWindowEventArgs)
Raises the AutoHideWindowDisplayed event.
Declaration
protected virtual void OnAutoHideWindowDisplayed(DockWindowEventArgs e)
Parameters
DockWindowEventArgs
e
|
OnAutoHideWindowDisplaying(AutoHideWindowDisplayingEventArgs)
Raises the AutoHideWindowDisplaying event.
Declaration
protected virtual void OnAutoHideWindowDisplaying(AutoHideWindowDisplayingEventArgs e)
Parameters
AutoHideWindowDisplayingEventArgs
e
|
OnAutoHideWindowHidden(DockWindowEventArgs)
Raises the AutoHideWindowHidden event.
Declaration
protected virtual void OnAutoHideWindowHidden(DockWindowEventArgs e)
Parameters
DockWindowEventArgs
e
|
OnAutoHideWindowHiding(DockWindowCancelEventArgs)
Raises the AutoHideWindowHiding event.
Declaration
protected virtual void OnAutoHideWindowHiding(DockWindowCancelEventArgs e)
Parameters
DockWindowCancelEventArgs
e
|
OnBackgroundImageChanged(EventArgs)
Called when the BackgroundImage property changes.
Declaration
protected override void OnBackgroundImageChanged(EventArgs e)
Parameters
System.EventArgs
e
An EventArgs that contains the event data. |
Remarks
This override updates the visibility settings of various elements based on whether a background image is present.
OnControlTreeChanged(ControlTreeChangedEventArgs)
Declaration
protected override void OnControlTreeChanged(ControlTreeChangedEventArgs args)
Parameters
ControlTreeChangedEventArgs
args
|
Overrides
OnDockStateChanged(DockWindowEventArgs)
Raises the DockStateChanged event.
Declaration
protected virtual void OnDockStateChanged(DockWindowEventArgs e)
Parameters
DockWindowEventArgs
e
|
OnDockStateChanging(DockStateChangingEventArgs)
Raises the DockStateChanging event.
Declaration
protected virtual void OnDockStateChanging(DockStateChangingEventArgs e)
Parameters
DockStateChangingEventArgs
e
|
OnDockStateContextMenuClicked(DockWindow, DockState)
Recieves a notification for a change state request, made from the window's associated context menu.
Declaration
protected virtual void OnDockStateContextMenuClicked(DockWindow window, DockState newState)
Parameters
DockWindow
window
|
DockState
newState
|
OnDockWindowAdded(DockWindowEventArgs)
Raises the DockWindowAdded event.
Declaration
protected virtual void OnDockWindowAdded(DockWindowEventArgs e)
Parameters
DockWindowEventArgs
e
|
OnDockWindowClosed(DockWindowEventArgs)
Raises the DockWindowClosed event.
Declaration
protected virtual void OnDockWindowClosed(DockWindowEventArgs e)
Parameters
DockWindowEventArgs
e
|
OnDockWindowClosing(DockWindowCancelEventArgs)
Raises the DockWindowClosing event.
Declaration
protected virtual void OnDockWindowClosing(DockWindowCancelEventArgs e)
Parameters
DockWindowCancelEventArgs
e
|
OnDockWindowNameChanged(DockWindow, String)
The manager gets notified for a change in the specified DockWindow instance Name property.
Declaration
protected virtual void OnDockWindowNameChanged(DockWindow dockWindow, string oldName)
Parameters
DockWindow
dockWindow
The DockWindow which name has changed. |
System.String
oldName
The window's previous name. |
OnDockWindowRemoved(DockWindowEventArgs)
Raises the DockWindowRemoved event.
Declaration
protected virtual void OnDockWindowRemoved(DockWindowEventArgs e)
Parameters
DockWindowEventArgs
e
|
OnDockWindowSerializing(DockWindow)
Raises the DockWindowSerializing event.
Declaration
protected virtual bool OnDockWindowSerializing(DockWindow dockWindow)
Parameters
DockWindow
dockWindow
|
Returns
System.Boolean
[true] if canceled, [false] otherwise. |
OnEnabledChanged(EventArgs)
Called when the control's Enabled property changes. Synchronizes the command manager's enabled state.
Declaration
protected override void OnEnabledChanged(EventArgs e)
Parameters
System.EventArgs
e
An EventArgs that contains the event data. |
Overrides
Remarks
This override ensures that the command manager's enabled state is synchronized with the control's Enabled property, preventing command processing when the control is disabled.
OnFloatingWindowCreated(FloatingWindowEventArgs)
Raises the FloatingWindowCreated event.
Declaration
protected virtual void OnFloatingWindowCreated(FloatingWindowEventArgs e)
Parameters
FloatingWindowEventArgs
e
|
OnHandleCreated(EventArgs)
Declaration
protected override void OnHandleCreated(EventArgs e)
Parameters
System.EventArgs
e
|
OnHandleDestroyed(EventArgs)
Called when the control's handle is destroyed. Disables the command manager to prevent stray commands.
Declaration
protected override void OnHandleDestroyed(EventArgs e)
Parameters
System.EventArgs
e
An EventArgs that contains the event data. |
Overrides
Remarks
This override ensures that the command manager is disabled when the control's handle is destroyed, preventing any command processing after the handle is gone but the control is still alive.
OnLoad(Size)
Called when control's creation is complete.
Declaration
protected override void OnLoad(Size desiredSize)
Parameters
System.Drawing.Size
desiredSize
|
Overrides
OnLoadedFromXml()
OnMouseDown(MouseEventArgs)
Declaration
protected override void OnMouseDown(MouseEventArgs e)
Parameters
System.Windows.Forms.MouseEventArgs
e
|
Overrides
OnMouseMove(MouseEventArgs)
Declaration
protected override void OnMouseMove(MouseEventArgs e)
Parameters
System.Windows.Forms.MouseEventArgs
e
|
Overrides
OnPaddingChanged(EventArgs)
Declaration
protected override void OnPaddingChanged(EventArgs e)
Parameters
System.EventArgs
e
|
Overrides
OnParentChanged(EventArgs)
Raises the System.Windows.Forms.Control.ParentChanged event.
Declaration
protected override void OnParentChanged(EventArgs e)
Parameters
System.EventArgs
e
An System.EventArgs that contains the event data. |
Overrides
Remarks
This method updates the internal parent form reference and reconnects event handlers when the parent of the RadDock control changes. It's essential for proper operation of floating windows and auto-hide functionality.
OnParentVisibleChanged(EventArgs)
Declaration
protected override void OnParentVisibleChanged(EventArgs e)
Parameters
System.EventArgs
e
|
OnQuickNavigatorSnapshotNeeded(DockWindowSnapshotEventArgs)
OnSavedToXml()
OnSelectedTabChanged(SelectedTabChangedEventArgs)
Declaration
protected virtual void OnSelectedTabChanged(SelectedTabChangedEventArgs e)
Parameters
SelectedTabChangedEventArgs
e
|
OnSelectedTabChanging(SelectedTabChangingEventArgs)
Declaration
protected virtual void OnSelectedTabChanging(SelectedTabChangingEventArgs e)
Parameters
SelectedTabChangingEventArgs
e
|
OnTabStripItemDoubleClick(TabStripItem, DockTabStrip)
Declaration
protected virtual void OnTabStripItemDoubleClick(TabStripItem item, DockTabStrip strip)
Parameters
TabStripItem
item
|
DockTabStrip
strip
|
OnThemeChanged()
Delegates the ThemeChanged event to all owned controls and elements.
Declaration
protected override void OnThemeChanged()
Overrides
OnToolTabStripDoubleClick(ToolTabStrip, Point)
Receives a notification from a tooltabstrip that the mouse was clicked inside its area. The default implementation will try to restore the state of the associated windows.
Declaration
protected virtual void OnToolTabStripDoubleClick(ToolTabStrip strip, Point click)
Parameters
ToolTabStrip
strip
|
System.Drawing.Point
click
|
OnTransactionBlockEnded(EventArgs)
Raises the TransactionBlockEnded event.
Declaration
protected virtual void OnTransactionBlockEnded(EventArgs e)
Parameters
System.EventArgs
e
|
OnTransactionBlockStarted(EventArgs)
Raises the TransactionBlockStarted event.
Declaration
protected virtual void OnTransactionBlockStarted(EventArgs e)
Parameters
System.EventArgs
e
|
OnTransactionCommitted(RadDockTransactionEventArgs)
Raises the TransactionCommitted event.
Declaration
protected virtual void OnTransactionCommitted(RadDockTransactionEventArgs e)
Parameters
RadDockTransactionEventArgs
e
|
OnTransactionCommitting(RadDockTransactionCancelEventArgs)
Raises the TransactionCommitting event.
Declaration
protected virtual void OnTransactionCommitting(RadDockTransactionCancelEventArgs e)
Parameters
RadDockTransactionCancelEventArgs
e
|
OnVisibleChanged(EventArgs)
Declaration
protected override void OnVisibleChanged(EventArgs e)
Parameters
System.EventArgs
e
|
Overrides
PerformUpdate()
Performs the core update logic after an EndUpdate call.
Declaration
protected virtual void PerformUpdate()
PostCommitTransaction(RadDockTransaction)
Allows inheritors to provide additional post-commit processing of a transaction.
Declaration
protected virtual void PostCommitTransaction(RadDockTransaction transaction)
Parameters
RadDockTransaction
transaction
|
PreCommitTransaction(RadDockTransaction)
Allows inheritors to provide additional pre-commit processing of a transaction.
Declaration
protected virtual void PreCommitTransaction(RadDockTransaction transaction)
Parameters
RadDockTransaction
transaction
|
ProcessFocusRequested(RadElement)
Declaration
protected override bool ProcessFocusRequested(RadElement element)
Parameters
RadElement
element
|
Returns
System.Boolean
|
Overrides
RegisterService(Int32, RadDockService)
Registers the specified service with this RadDock instance.
Declaration
public void RegisterService(int key, RadDockService service)
Parameters
System.Int32
key
The key that identifies the service, typically a value from ServiceConstants. |
RadDockService
service
The RadDockService instance to register. |
Remarks
This method registers a service that provides additional functionality to the RadDock control. If a service with the same key already exists, it will be detached and replaced with the new service. Services are used to extend RadDock functionality without modifying its core code. Common services include RedockService for state persistence and CommandService for command routing.
RemoveAllDocumentWindows()
Removes all DocumentWindows, without disposing it.
Declaration
public void RemoveAllDocumentWindows()
RemoveAllDocumentWindows(DockWindowCloseAction)
Removes all DocumentWindows, using the specified close action.
Declaration
public void RemoveAllDocumentWindows(DockWindowCloseAction closeAction)
Parameters
DockWindowCloseAction
closeAction
The action to be taken when closing a window. |
RemoveAllToolWindows(DockWindowCloseAction, AllowedDockState)
Removes all ToolWindows with the specified DockState, using the specified close action.
Declaration
public void RemoveAllToolWindows(DockWindowCloseAction closeAction = DockWindowCloseAction.Close, AllowedDockState allowedDockState = AllowedDockState.Docked | AllowedDockState.AutoHide)
Parameters
DockWindowCloseAction
closeAction
The action to be taken when closing a window. |
AllowedDockState
allowedDockState
Specifies the DockState of the ToolWindows that will be removed. The enumeration flags can be combined. |
RemoveAllWindows()
Removes all DockWindows from the docking manager, without disposing them.
Declaration
public void RemoveAllWindows()
Remarks
This method removes all windows from the docking manager using the DockWindowCloseAction.Close action. The windows are removed from the docking layout but are not disposed, so they can be reused later. To control the close action, use the overload that accepts a DockWindowCloseAction parameter.
RemoveAllWindows(DockWindowCloseAction)
Removes all DockWindows from the docking manager, using the specified close action.
Declaration
public void RemoveAllWindows(DockWindowCloseAction closeAction)
Parameters
DockWindowCloseAction
closeAction
The action to be taken when closing each window. This can be Close (remove without disposing), CloseAndDispose (remove and dispose), or Hide (hide without removing). |
Remarks
This method removes all windows from the docking manager using the specified close action. It begins a transaction block before removing windows and ends it after all windows are removed.
RemoveWindow(DockWindow)
Removes the specified window, without disposing it, from the dock manager.
Declaration
public void RemoveWindow(DockWindow window)
Parameters
DockWindow
window
|
RemoveWindow(DockWindow, DockWindowCloseAction)
Removes the specified window, using the specified DockWindowCloseAction.
Declaration
public void RemoveWindow(DockWindow window, DockWindowCloseAction closeAction)
Parameters
DockWindow
window
|
DockWindowCloseAction
closeAction
The desired action to be taken. |
RestoreWindowsStatesAfterLoad()
This method is used internally.
Declaration
public void RestoreWindowsStatesAfterLoad()
RestoreWindowsStatesAfterLoad(Boolean)
This method is used internally.
Declaration
public void RestoreWindowsStatesAfterLoad(bool beginInitWindows)
Parameters
System.Boolean
beginInitWindows
|
SaveToXml(Stream)
Saves the current docking layout configuration in XML format to the specified stream.
Declaration
public void SaveToXml(Stream stream)
Parameters
System.IO.Stream
stream
The stream where the layout should be written. The stream must be writable. |
Remarks
This method serializes the current state of all dock windows to the provided stream. This overload is useful when you need to save the layout to memory, a database, or another destination other than a file.
The serialized data includes:
- Window positions and sizes
- Dock states (docked, floating, auto-hidden, etc.)
- Tab groups and arrangements
- Window relationships and hierarchy
To restore a layout from a stream, use the LoadFromXml(Stream, Boolean) method.
SaveToXml(TextWriter)
Saves the current docking layout configuration in XML format using the specified TextWriter.
Declaration
public void SaveToXml(TextWriter textWriter)
Parameters
System.IO.TextWriter
textWriter
The TextWriter instance to which the XML should be written. |
Remarks
This method serializes the current state of all dock windows using the provided TextWriter. This overload is useful when you need fine-grained control over the text output process, such as when writing to a custom text destination or applying additional text processing.
The serialized data includes the same information as the other SaveToXml methods:
- Window positions and sizes
- Dock states (docked, floating, auto-hidden, etc.)
- Tab groups and arrangements
- Window relationships and hierarchy
The XML is formatted with proper indentation for readability.
SaveToXml(String)
Saves the current docking layout configuration in XML format to the specified file.
Declaration
public void SaveToXml(string fileName)
Parameters
System.String
fileName
The path to the file where the layout should be saved. If the file exists, it will be overwritten. |
Remarks
This method serializes the current state of all dock windows, including their positions, sizes, dock states, and relationships. The resulting XML file can later be used to restore the layout using the LoadFromXml(String, Boolean) method.
The serialized data includes:
- Window positions and sizes
- Dock states (docked, floating, auto-hidden, etc.)
- Tab groups and arrangements
- Window relationships and hierarchy
Note that only the structural information is saved, not the actual content of the windows. When restoring a layout, the windows must already be registered with the RadDock instance.
SaveToXmlCore(XmlWriter)
Performs the core XML serialization logic for saving the docking layout.
Declaration
protected virtual void SaveToXmlCore(XmlWriter writer)
Parameters
System.Xml.XmlWriter
writer
The XmlWriter to which the XML should be written. |
Remarks
This method contains the actual implementation of the XML serialization process. It sorts floating windows by Z-order, creates a serializer with the appropriate settings, and writes the RadDock object structure to XML.
This method can be overridden in derived classes to customize the serialization process while still using the basic SaveToXml methods.
SetBoundsCore(Int32, Int32, Int32, Int32, BoundsSpecified)
Declaration
protected override void SetBoundsCore(int x, int y, int width, int height, BoundsSpecified specified)
Parameters
System.Int32
x
|
System.Int32
y
|
System.Int32
width
|
System.Int32
height
|
System.Windows.Forms.BoundsSpecified
specified
|
Overrides
SetWindowState(DockWindow, DockState)
Applies the desired DockState to the specified DockWindow, either by restoring a previously saved state or performing the default action.
Declaration
public void SetWindowState(DockWindow window, DockState state)
Parameters
DockWindow
window
The DockWindow instance to change state for. |
DockState
state
The target dock state to apply (Docked, TabbedDocument, AutoHide, Floating, Hidden). |
Remarks
This method changes the dock state of the window to the specified state. If the window is already in the requested state, this method has no effect.
If a previously saved layout state exists for this window in the requested dock state (through the RedockService), that state will be restored, preserving the window's previous position and size in that state. Otherwise, the default action will be performed:
- DockState.Docked: Window will be docked to the left side
- DockState.TabbedDocument: Window will be added as a document
- DockState.AutoHide: Window will be auto-hidden on the left side
- DockState.Floating: Window will be floated
- DockState.Hidden: Window will be hidden
ShouldProcessNotification()
This method is used internally.
Declaration
public bool ShouldProcessNotification()
Returns
System.Boolean
|
ShowAutoHidePopup(HostWindow)
Displays the auto-hide popup for the specified host window.
Declaration
public void ShowAutoHidePopup(HostWindow window)
Parameters
HostWindow
window
The host window to display in the auto-hide popup. |
Remarks
This method displays the auto-hide popup for a host window as if its tab was clicked, causing the window to slide out from its auto-hide position.
ShowAutoHidePopup(ToolWindow)
Displays the auto-hide popup for the specified tool window.
Declaration
public void ShowAutoHidePopup(ToolWindow window)
Parameters
ToolWindow
window
The tool window to display in the auto-hide popup. |
Remarks
This method displays the auto-hide popup for a tool window as if its tab was clicked, causing the window to slide out from its auto-hide position.
UpdateBackgroundSettings()
Updates the visibility settings of split panel elements based on whether a background image is set.
Declaration
protected void UpdateBackgroundSettings()
Remarks
When a background image is set, certain panel elements are hidden to allow the background image to show through. When no background image is set, the elements' visibility is reset to their default values.
UpdateCollapsed()
Events
ActiveWindowChanged
Notifies for an actual change of the ActiveWindow property.
Declaration
public event DockWindowEventHandler ActiveWindowChanged
Event Type
DockWindowEventHandler
|
ActiveWindowChanging
Notifies for an upcomming change of the ActiveWindow property. Cancelable.
Declaration
public event DockWindowCancelEventHandler ActiveWindowChanging
Event Type
DockWindowCancelEventHandler
|
AutoHideWindowDisplayed
Notifies that an auto-hidden window is about to be displayed. Cancelable.
Declaration
public event DockWindowEventHandler AutoHideWindowDisplayed
Event Type
DockWindowEventHandler
|
AutoHideWindowDisplaying
Notifies that an auto-hidden window is about to be displayed. Cancelable.
Declaration
public event AutoHideWindowDisplayingEventHandler AutoHideWindowDisplaying
Event Type
AutoHideWindowDisplayingEventHandler
|
AutoHideWindowHidden
Notifies that a window which DockState is AutoHide has been hidden.
Declaration
public event DockWindowEventHandler AutoHideWindowHidden
Event Type
DockWindowEventHandler
|
AutoHideWindowHiding
Notifies that a window with AutoHide DockState is hiding.
Declaration
public event DockWindowCancelEventHandler AutoHideWindowHiding
Event Type
DockWindowCancelEventHandler
|
DockStateChanged
Notifies for a change in the DockState of the associated window.
Declaration
public event DockWindowEventHandler DockStateChanged
Event Type
DockWindowEventHandler
|
DockStateChanging
Notifies for an upcomming change in the DockState of the associated window. Cancelable.
Declaration
public event DockStateChangingEventHandler DockStateChanging
Event Type
DockStateChangingEventHandler
|
DockTabStripNeeded
Raised whenever a new DockTabStrip instance is needed internally by the framework. Allows for providing custom ToolTabStrip and DocumentTabStrip implementations.
Declaration
public event DockTabStripNeededEventHandler DockTabStripNeeded
Event Type
DockTabStripNeededEventHandler
|
DockWindowAdded
Notifies for a new DockWindow registered with this RadDock instance.
Declaration
public event DockWindowEventHandler DockWindowAdded
Event Type
DockWindowEventHandler
|
DockWindowClosed
Raised after a DockWindow has been closed.
Declaration
public event DockWindowEventHandler DockWindowClosed
Event Type
DockWindowEventHandler
|
DockWindowClosing
Raised before a DockWindow.Close method is called.
Declaration
public event DockWindowCancelEventHandler DockWindowClosing
Event Type
DockWindowCancelEventHandler
|
DockWindowRemoved
Notifies for a DockWindow removed from this RadDock instance. This event will not be raised for hidden windows.
Declaration
public event DockWindowEventHandler DockWindowRemoved
Event Type
DockWindowEventHandler
|
DockWindowSerializing
Fired when a dock window is being serialized. Allows excluding some windows from serialization.
Declaration
public event EventHandler<DockWindowCancelEventArgs> DockWindowSerializing
Event Type
System.EventHandler<DockWindowCancelEventArgs>
|
FloatingWindowCreated
Notifies that a FloatingWindow instance is internally created by the framework. Allows listeners to examine and optionally change the window itself.
Declaration
public event FloatingWindowEventHandler FloatingWindowCreated
Event Type
FloatingWindowEventHandler
|
LoadedFromXml
Notifies that manager's state has been loaded from an external XML source.
Declaration
public event EventHandler LoadedFromXml
Event Type
System.EventHandler
|
PageViewInstanceCreated
Fires after RadPageViewElement is created.
Declaration
public event PageViewInstanceCreatedEventHandler PageViewInstanceCreated
Event Type
PageViewInstanceCreatedEventHandler
|
QuickNavigatorSnapshotNeeded
SavedToXml
Notifies that manager's state has been saved to an external XML source.
Declaration
public event EventHandler SavedToXml
Event Type
System.EventHandler
|
SelectedTabChanged
Occurs when selected tab changed in currently manipulated DockTabStrip.
Declaration
public event SelectedTabChangedEventHandler SelectedTabChanged
Event Type
SelectedTabChangedEventHandler
|
SelectedTabChanging
Occurs when selected tab changing in currently manipulated DockTabStrip.
Declaration
public event SelectedTabChangingEventHandler SelectedTabChanging
Event Type
SelectedTabChangingEventHandler
|
SplitContainerNeeded
Raised whenever a new RadSplitContainer instance is needed internally by the framework. Allows for providing custom RadSplitContainer implementation.
Declaration
public event SplitContainerNeededEventHandler SplitContainerNeeded
Event Type
SplitContainerNeededEventHandler
|
TransactionBlockEnded
Notifies for a successful EndTransactionBlock operation, when all transactions are committed, the DockTree is cleaned, and updates are resumed.
Declaration
public event EventHandler TransactionBlockEnded
Event Type
System.EventHandler
|
TransactionBlockStarted
Notifies for a successful BeginTransactionBlock operation.
Declaration
public event EventHandler TransactionBlockStarted
Event Type
System.EventHandler
|
TransactionCommitted
Raised when a RadDockTransaction is successfully committed. Allows listeners to perform some additional operations.
Declaration
public event RadDockTransactionEventHandler TransactionCommitted
Event Type
RadDockTransactionEventHandler
|
TransactionCommitting
Raised when a RadDockTransaction is about to be committed. Allows listeners to investigate the transaction, perform some additional actions and/or cancel it.
Declaration
public event RadDockTransactionCancelEventHandler TransactionCommitting
Event Type
RadDockTransactionCancelEventHandler
|
Explicit Interface Implementations
IMessageListener.DesiredHook
IMessageListener.PreviewMessage(ref Message)
Declaration
MessagePreviewResult IMessageListener.PreviewMessage(ref Message msg)
Parameters
System.Windows.Forms.Message
msg
|
Returns
MessagePreviewResult
|
Implements
IMessageListener.PreviewSystemMessage(SystemMessage, Message)
Declaration
void IMessageListener.PreviewSystemMessage(SystemMessage message, Message msg)
Parameters
SystemMessage
message
|
System.Windows.Forms.Message
msg
|
Implements
IMessageListener.PreviewWndProc(Message)
Declaration
void IMessageListener.PreviewWndProc(Message msg)
Parameters
System.Windows.Forms.Message
msg
|
Implements
ILoadObsoleteDockingManagerXml.DockableDeserialized
Declaration
event EventHandler<DockableDeserializedEventArgs> ILoadObsoleteDockingManagerXml.DockableDeserialized
Returns
System.EventHandler<DockableDeserializedEventArgs>
|
Implements
ILoadObsoleteDockingManagerXml.LoadDockingManagerXml(TextReader)
Declaration
void ILoadObsoleteDockingManagerXml.LoadDockingManagerXml(TextReader input)
Parameters
System.IO.TextReader
input
|