I am trying to add Telerik’s controls (like RadMaskedTextBox, RadNumericTextBox and RadDateInput controls) dynamically into a user control (under the Page_Init event) which is itself a child of another user control.
When I run the project, following exception occurred and nothing is shown in the user control.
“Microsoft JScript runtime error: Sys.ArgumentException: Value must not be null for Controls and Behaviors. Parameter name: element”
However, these controls are added directly on a .aspx page without any exception and it appeared that the Telerik’s controls get registered in the Page_PreRenderComplete event of an .aspx page and since this event does not exist in a user control therefore they are throwing the above exception.

<telerik:RadButton ID="OrderButton" runat="server" Text="Order Check Copy" ButtonType="LinkButton" CssClass="css3Grad" ForeColor="White" SingleClick="True" OnClick="OrderButton_Click" BorderStyle="None" SingleClickText="Processing ..... " AutoPostBack="False" UseSubmitBehavior="False"></telerik:RadButton>$(document).ready(function (){ $('#<%= OrderButton.ClientID %>').click(function () { $('#aspnetForm').validate({ }); $('#<%=accountNumber.ClientID%>').rules('add', { required: true, messages: { required: ' Required' } }); $('#<%=ckNumLabel.ClientID%>').rules('add', { required: true, messages: { required: ' Required' } }); $('#<%=dateLabel.ClientID%>').rules('add', { required: true, messages: { required: ' Required' } }); $('#<%=amountLabel.ClientID%>').rules('add', { required: true, messages: { required: ' Required' } }); if ($('#aspnetForm').valid() == false) { var btn = $find('<%= OrderButton.ClientID %>'); btn.set_enabled(true); } });});
MainReport report1 = new MainReport();
Telerik.Reporting.
SubReport subReport1 =
Telerik.Reporting.
InstanceReportSource =
Telerik.Reporting.
Report sub2 = (Telerik.Reporting.Report)irs.ReportDocument;
sub2.DataSource =
value;
<telerik:RadGrid ID="RadGridOrderLines" AutoGenerateColumns="false" AllowPaging="false" runat="server"> <MasterTableView HierarchyDefaultExpanded="true" DataKeyNames="PurchaseOrderDetailID"> <Columns> <telerik:GridButtonColumn ImageUrl="~/Images/edit_16x16.gif" CommandName="editline" ButtonType="ImageButton" ></telerik:GridButtonColumn> <telerik:GridBoundColumn HeaderText="ITE" DataField="ArticleITECode" SortExpression="ArticleITECode"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Article %>' DataField="ArticleName" SortExpression="ArticleName"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Status %>' DataField="PurchaseOrderDetailStatusDescription" SortExpression="PurchaseOrderDetailStatusDescription"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Price %>' DataField="ArticleUnitPrice" DataFormatString="{0:F2}" SortExpression="ArticleUnitPrice"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Quantity %>' DataField="PurchaseOrderDetailQuantity" DataFormatString="{0:F0}" SortExpression="PurchaseOrderDetailQuantity"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Remark %>' DataField="PurchaseOrderDetailRemarks" SortExpression="PurchaseOrderDetailRemarks"></telerik:GridBoundColumn> </Columns> <NestedViewTemplate> <asp:Panel CssClass="pad5" runat="server" ID="panelDeliveries"> <asp:Label runat="server" ID="lblDeliveries" Text='<%$ Resources:CommonTerms, Deliveries %>'></asp:Label> <asp:Label runat="server" ID="lblDeliveriesCount"></asp:Label><br /> <telerik:RadGrid ID="RadGridDelivery" AutoGenerateColumns="false" AllowPaging="false" runat="server"> <MasterTableView> <Columns> <telerik:GridBoundColumn HeaderText="ITE" DataField="ArticleITECode" SortExpression="ArticleITECode"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Article %>' DataField="ArticleName" SortExpression="ArticleName"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Status %>' DataField="PurchaseDeliveryStatus" SortExpression="PurchaseDeliveryStatus"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Price %>' DataField="ArticleUnitPrice" DataFormatString="{0:F2}" SortExpression="ArticleUnitPrice"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Quantity %>' DataField="PurchaseDeliveryQuantity" DataFormatString="{0:F0}" SortExpression="PurchaseDeliveryQuantity"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Remark %>' DataField="PurchaseDeliveryRemarks" SortExpression="PurchaseDeliveryRemarks"></telerik:GridBoundColumn> </Columns> </MasterTableView> </telerik:RadGrid> </asp:Panel> <asp:Panel runat="server" ID="panelAssets" CssClass="pad5"> <asp:Label runat="server" ID="lblAssets" Text='<%$ Resources:CommonTerms, Assets %>'></asp:Label> <asp:Label runat="server" ID="lblAssetsCount"></asp:Label><br /> <telerik:RadGrid ID="RadGridAssets" AutoGenerateColumns="false" AllowPaging="false" runat="server"> <MasterTableView HierarchyDefaultExpanded="true" DataKeyNames="PurchaseDeliveryAssetID"> <Columns> <telerik:GridBoundColumn HeaderText="Asset" DataField="AssetType" SortExpression="AssetType"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Quantity %>' DataField="PurchaseDeliveryAssetQuantity" DataFormatString="{0:F0}" SortExpression="PurchaseOrderDetailQuantity"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Price %>' DataField="AssetUnitPrice" DataFormatString="{0:F2}" SortExpression="ArticleUnitPrice"></telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText='<%$ Resources:CommonTerms, Currency %>' DataField="Currency" SortExpression="ArticleName"></telerik:GridBoundColumn> </Columns> </MasterTableView> </telerik:RadGrid> </asp:Panel> </NestedViewTemplate> </MasterTableView></telerik:RadGrid>Private Sub FillPage(ByVal id As Int32) Dim order = Univeg.BL.PurchaseOrder.GetByID(id, SessionVars.CuCo) If order Is Nothing Then lblErrorPurchaseOrderNotFound.Visible = True Return End If Me.PurchaseOrderID = id lblNumber2.Text = order.PurchaseOrderNumber lblSupplierName.Text = order.SupplierCode & " - " & order.SupplierName lblSupplierCity.Text = order.SupplierZipCode & " - " & order.SupplierCity lblWarehouse.Text = order.WarehouseCode & " - " & order.WarehouseName lblOrderStatus.Text = order.PurchaseOrderStatusDescription lblDepartment.Text = order.DepartmentName Dim orderlines = Univeg.BL.PurchaseOrderDetail.GetLinesForOrder(id, SessionVars.CuCo) ' get delivery lines DeliveryLines = Univeg.BL.PurchaseDelivery.GetPurchaseLinesForOrder(id, SessionVars.CuCo) ' get delivery assets DeliveryAssetLines = Univeg.BL.PurchaseDeliveryAsset.GetListForOrder(id) RadGridOrderLines.DataSource = orderlines RadGridOrderLines.DataBind() Dim assets = Univeg.BL.PurchaseOrderAsset.GetListForOrder(id) lblAssetsCount.Text = assets.Count.ToString() RadGridAssets.DataSource = assets RadGridAssets.DataBind()End SubProtected Sub RadGridDelivery_NeedDataSource(sender As Object, e As Telerik.Web.UI.GridNeedDataSourceEventArgs) Dim RadGridDelivery As Telerik.Web.UI.RadGrid = sender Dim nestedItem As GridNestedViewItem = DirectCast(TryCast(sender, RadGrid).NamingContainer, GridNestedViewItem) Dim PurchaseOrderDetailID As Int32 = nestedItem.ParentItem.GetDataKeyValue("PurchaseOrderDetailID") If DeliveryLines Is Nothing Then DeliveryLines = Univeg.BL.PurchaseDelivery.GetPurchaseLinesForOrder(Me.PurchaseOrderID, SessionVars.CuCo) End If If Not DeliveryLines Is Nothing Then Dim delivery = (From dl In DeliveryLines _ Where dl.PurchaseOrderDetailID = PurchaseOrderDetailID _ Order By dl.PurchaseDeliveryTHT _ Select dl).ToList() If delivery.Count > 0 Then RadGridDelivery.DataSource = delivery Dim lblDeliveriesCount As Label = nestedItem.FindControl("lblDeliveriesCount") If Not lblDeliveriesCount Is Nothing Then lblDeliveriesCount.Text = delivery.Count.ToString() End If Else RadGridDelivery.Visible = False Dim panelDeliveries As Panel = nestedItem.FindControl("panelDeliveries") If Not panelDeliveries Is Nothing Then panelDeliveries.Visible = False End If End If End IfEnd SubProtected Sub RadGridAssets_NeedDataSource(sender As Object, e As Telerik.Web.UI.GridNeedDataSourceEventArgs) Dim RadGridAssets As Telerik.Web.UI.RadGrid = sender Dim nestedItem As GridNestedViewItem = DirectCast(TryCast(sender, RadGrid).NamingContainer, GridNestedViewItem) Dim PurchaseOrderDetailID As Int32 = nestedItem.ParentItem.GetDataKeyValue("PurchaseOrderDetailID") If Not DeliveryAssetLines Is Nothing Then Dim assets = (From da In DeliveryAssetLines _ Where da.PurchaseOrderDetailID = PurchaseOrderDetailID _ Order By da.AssetType _ Select da).ToList() If assets.Count > 0 Then RadGridAssets.DataSource = assets Dim lblAssetsCount As Label = nestedItem.FindControl("lblAssetsCount") If Not lblAssetsCount Is Nothing Then lblAssetsCount.Text = assets.Count.ToString() End If Else Dim panelAssets As Panel = nestedItem.FindControl("panelAssets") If Not panelAssets Is Nothing Then panelAssets.Visible = False End If End If End IfEnd SubProtected Sub RadGridOrderLines_ItemCreated(sender As Object, e As Telerik.Web.UI.GridItemEventArgs) Handles RadGridOrderLines.ItemCreated If TypeOf e.Item Is GridNestedViewItem Then Dim RadGridDelivery As RadGrid = e.Item.FindControl("RadGridDelivery") Dim RadGridAssets As RadGrid = e.Item.FindControl("RadGridAssets") If Not RadGridDelivery Is Nothing Then AddHandler RadGridDelivery.NeedDataSource, AddressOf RadGridDelivery_NeedDataSource End If If Not RadGridAssets Is Nothing Then AddHandler RadGridAssets.NeedDataSource, AddressOf RadGridAssets_NeedDataSource End If End IfEnd Sub<telerik:RadButton ID="radButtonNewPlacement" Text="New Placement" ToolTip="#" ButtonType="LinkButton" EnableEmbeddedSkins="false" EnableEmbeddedBaseStylesheet="false" runat="server" CssClass="radButtonNoImage" OnClick="radButtonNewPlacement_Click" NavigateUrl="http://www.bing.com" /><a id="radButtonNewPlacement" title="#" class="RadButton RadButton_Office2010Blue rbLinkButton radButtonNoImage" href="http://www.bing.com"><span class="rbText">New Placement</span><input id="radButtonNewPlacement_ClientState" name="radButtonNewPlacement_ClientState" type="hidden" /></a>