We recommend creating the dynamic RadDock controls at the Init event of the page in order to allow the RadDockLayout to automatically manage their positions. However, you can create RadDock controls in other events as well but you should recreate them in Init when the next postback or AJAX request occurs. I suggest you take a look at the Dynamically Created Docks online example
which demonstrates how to dynamically create docks at button click event and recreate them from state at page Init.
If you need further assistance, do contact us again.
All the best,
the Telerik team