[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'Controls' (#lcl)

# TControl.ManualDock

Docks a control programmatically.

## Declaration

Source position: controls.pp line 1253

`public function TControl.ManualDock(`
`NewDockSite: TWinControl;`
`DropControl: TControl = nil;`
`ControlSide: TAlign = alNone;`
`KeepDockSiteSize: Boolean = true`
`):Boolean; virtual;`

## Arguments

`NewDockSite` |  | The new site to which the control is docked, if DropControl has been found to be nil
`DropControl` |  | If nil (default) then ignored else used as the control for docking, on side specified by ControlSide
`ControlSide` |  | The side on which the control is to be docked, if DropControl is not nil

## Function result

The function returns True if a manual dock has been successfully performed

## Description

Docks this control into NewDockSite, relative to DropControl. When NewDockSite is Nil, the control becomes floating.

When the new docksite uses an DockManager, and DropControl is not Nil, the control will be docked relative to DropControl, as specified by ControlSide. The interpretation of ControlSide depends on the DockManager of NewDockSite, or on the OnDockDrop handler in an unmanaged docksite. A tree docking manager (TDockTree) should interpret alCustom as NoteBook docking, i.e. a tabbed notebook is created in place of DropControl, and both DropControl and this control are docked into pages of this notebook.

The latest version of this document can be found at lazarus-ccr.sourceforge.net.