I think that the my portal
example will give you an idea how to implement your specific scenario. You can easily modify it to save the state of the RadDocks in a DataBase.
If you want to dynamically add controls inside the RadDock you should add them to the RadDock.ContentContainer and they will appear in the dock's content. Please note that every control that is dynamically added to the RadDock needs to be recreated in the Page_Init method (before the ViewState is loaded and at the same time when the RadDock control is recreated from the state).
The state of the docks' child controls should be saved in the DockSaveLayout server-side event when the DockState is saved in a DB (or the Session). To find the controls that are inside the dock content container use RadDock.ContentContainer.FindControl(ControlID).
I hope my suggestions were helpful. If you have other questions, please do contact us.
the Telerik team