New to Telerik UI for ASP.NET AJAX? Download free 30-day trial

Telerik.Web.UI.RadDockLayout

Workflow: 1). OnInit - ensure that the framework will call TrackViewState, LoadViewState and SaveViewState. We expect that all child docks will be created here. 2). TrackViewState - raise LoadDockLayout event in order to let the developer to supply the initial parents of the registered docks, because the docks could be created with different parents than needed. 2a). LoadViewState - loads and applies the dock parents from the ViewState in order to persist the dock positions between the page postbacks. 3). LoadPostData - returns true to ensure that RaisePostDataChangedEvent() 3a). Dock_DockZoneChanged - this event is raised by each dock in its LoadPostData method. We handle this event and store the pair UniqueName/NewDockZoneID in the _clientPositions Dictionary. This Dictionary will be used in #4. 4). RaisePostDataChangedEvent - sets the parents of the registered docks according their positions, set on the client. These positions are stored in the _clientPositions Dictionary. 5). OnLoad, other events, such as Click, Command, etc. If you create a dock here it will be rendered on the page, but if it is not recreated in the next OnInit, it will not persist its position, set on the client! 6). SaveViewState - stores the dock parents in the ViewState in order to persist their positions between the page postbacks. 7). Page_SaveStateComplete - raises the SaveDockLayout event to let the developer to save the state in a database or other storage medium. Note: The dock parents will be stored in the ViewState if StoreLayoutInViewState is set to true (default). Otherwise the developer should take care of the dock positions when the page is posted back.

Inheritance Hierarchy

  • System.Object
  • System.Web.UI.Control
  • Telerik.Web.UI.RadDockLayout : IControl, IDockLayout, ISkinnableControl

Properties

EnableAjaxSkinRendering String

Gets or sets the value, indicating whether to render the skin CSS files during Ajax requests.

Remarks

If EnableAjaxSkinRendering is set to false you will have to register the needed control base CSS file by hand when adding/showing the control with Ajax.

EnableEmbeddedBaseStylesheet Boolean

Gets or sets the value, indicating whether to render the link to the embedded base stylesheet of the control or not.

Remarks

If EnableEmbeddedBaseStylesheet is set to false you will have to register the needed control base CSS file by hand.

EnableEmbeddedSkins String

Gets or sets the value, indicating whether to render links to the embedded skins or not.

Remarks

If EnableEmbeddedSkins is set to false you will have to register the needed CSS files by hand.

        If the Skin property is set, RadDockLayout will set the Skin and EnableEmbeddedSkins properties
        of each child RadDock and RadDockZone, unless their Skin property is not explicitly set.

EnableLayoutPersistence Boolean

Specifies wheter the built-in state storing should be enabled.

IsSkinSet String

For internal use.

LayoutPersistenceRepositoryType DockLayoutPersistenceRepository

Gets or sets the type of the data repository to be used for storing the state.

Remarks

The corresponding StorageProvider will be used for the state storing functionality.

LayoutRepositoryID String

Gets or sets the key identifier of the stored RadDocks' states.

Remarks

The corresponding StorageProvider will be used for the state storing functionality.

RegisteredDocks ReadOnlyCollection1`

Returns all registered docks with this RadDockLayout control.

RegisteredZones ReadOnlyCollection1`

Returns all registered zones with this RadDockLayout control.

RenderingMode RenderMode

Specifies the rendering mode of the control. Setting the mode to Lightweight will yield HTML 5/CSS 3 html and css.

Remarks

Lightweight rendering mode might change the outlook of the component in some older browsers that don't support CSS3/HTML5.

Skin String

Gets or sets the skin name for the child controls' user interface.

Remarks

If this property is set, RadDockLayout will set the Skin and EnableEmbeddedSkins properties of each child RadDock and RadDockZone, unless their Skin property is not explicitly set.

StorageProvider IStateStorageProvider

Gets or sets the StateStorageProvider instance that will be used for the built-in state storing.

StoredIndices Dictionary2`

This is the container where we will store the dock indices set on the client.

StoredPositions Dictionary2`

This is the container where we will store the dock positions set on the client.

StoreLayoutInViewState Boolean

By default RadDockLayout will store the positions of its inner docks in the ViewState. If you want to store the positions in other storage medium such as a database, or the Session, set this property to false. Setting this property to false will also minimize the ViewState usage.

Methods

GetEmbeddedSkinNames

Returns the names of all embedded skins. Used by Telerik.Web.Examples.

Returns

System.Collections.Generic.List1`

GetRegisteredDocksState

Cycles through all registered docks and retrieves their state, depending on the omitClosedDocks parameter and the value of the Closed property of each RadDock control. The List returned by this method could be used to recreate the docks when the user visits the page again.

Parameters

omitClosedDocks System.Boolean

A bool value that specifies whether the closed RadDock controls should be excluded from the state.

Returns

System.Collections.Generic.List1` A List, containing UniqueName/DockState pairs.

GetRegisteredDocksState

Cycles through all registered docks and retrieves their state. The List returned by this method could be used to recreate the docks when the user visits the page again.

Returns

System.Collections.Generic.List1` A List, containing UniqueName/DockState pairs.

OnLoadDockLayout

Raises the LoadDockLayout event.

Parameters

e Telerik.Web.UI.DockLayoutEventArgs

A DockLayoutEventArgs that contains the event data.

Returns

System.Void

OnSaveDockLayout

Raises the SaveDockLayout event.

Parameters

e Telerik.Web.UI.DockLayoutEventArgs

A DockLayoutEventArgs that contains the event data.

Returns

System.Void

Page_InitComplete

The docks must be already created. We will apply their order and if there is a state information, we will apply it.

Returns

System.Void

SetRegisteredDockParents

Reorders the docks in the control tree, according the supplied parameters.

Remarks

This method will check for uniqueness of the UniqueNames of the registered docks. If there are two docks with equal unique names an exception will be thrown.

Parameters

parents System.Collections.Generic.Dictionary{System.String,System.String}

A Dictionary, containing UniqueName/DockZoneID pairs.

indices System.Collections.Generic.Dictionary{System.String,System.Int32}

A Dictionary, containing UniqueName/Index pairs.

Returns

System.Void

Telerik.Web.UI.IDockLayout.RegisterDock

Each dock will use this method in its OnInit event to register with the RadDockLayout. This is needed in order for the layout to be able to manage the dock position set on the client.

Parameters

dock Telerik.Web.UI.RadDock

The RadDock object that will be registered.

Returns

System.Void

Telerik.Web.UI.IDockLayout.RegisterDockZone

Each zone will use this method in its OnInit event to register with the RadDockLayout. This is needed in order the layout to be able to manage the dock positions, set on the client.

Parameters

zone Telerik.Web.UI.RadDockZone

The RadDockZone object that will be registered.

Returns

System.Void

Telerik.Web.UI.IDockLayout.SetDockParent

Docks the dock to a zone with ClientID = newParentClientID.

Parameters

dock Telerik.Web.UI.RadDock

The dock which should be docked.

newParentClientID System.String

The ClientID of the new parent.

Returns

System.Void

Telerik.Web.UI.IDockLayout.UnRegisterDock

Each dock will use this method in its OnUnload event to unregister with the IDockLayout. This is needed in order the layout to be able to manage the dock state properly.

Parameters

dock Telerik.Web.UI.RadDock

The RadDock object that will be unregistered.

Returns

System.Void

Telerik.Web.UI.IDockLayout.UnRegisterDockZone

Each zone will use this method in its OnUnload event to unregister with the IDockLayout.

Parameters

zone Telerik.Web.UI.RadDockZone

The RadDockZone object that will be unregistered.

Returns

System.Void

In this article