This is not directly related to the RadDock control, because if you try to add any user control dynamically during ajax request, its scripts will not be executed.
This problem can be solved, by manually evaluating the scripts in the user control, by registering a script from the code behind. What you need to do is place the JS code of every user control into asp:Panel control with ID="Panel1". Then in the code behind of the main page, where the docks are added for the first time - on button.click for example we add the following code (highlighted in yellow):
sender, EventArgs e)
RadDock dock = CreateRadDock();
//find the target zone and add the new dock there
RadDockZone dz = (RadDockZone)FindControl(DropDownZone.SelectedItem.Text);
//Load the selected widget in the RadDock control
dock.Tag = DroptDownWidget.SelectedValue;
Control widget = dock.ContentContainer.Controls;
Control panelScript = widget.FindControl(
var script =
What it does is, it gets the ClientID of the panel, and registers a script that searches the panel's HTML element on the client (using the ClientID), and evaluates the script tag.
The script in the user control should look like the following:
the Telerik team