New to Telerik UI for ASP.NET AJAX? Start a free 30-day trial
RadPersistManagerProxy and WebUserControls
RadPersistenceManager for ASP.NET AJAX allows a single instance of the control on the same page only. One cannot place manager in the main page and second instance inside a user control anymore. For such scenarios, you can use RadPersistenceManagerProxy inside a WebUserControl and configure it the same way as the manager. The following example demonstrates how to properly persist the state of RadGrid control inside a WebUserControl.
Content page
ASP.NET
<!DOCTYPE html>
<html xmlns="https://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<telerik:RadScriptManager ID="RadScriptManager1" runat="server">
<Scripts>
<asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.Core.js" />
<asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js" />
<asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQueryInclude.js" />
</Scripts>
</telerik:RadScriptManager>
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
</telerik:RadAjaxManager>
<telerik:RadPersistenceManager ID="RadPersistenceManager1" runat="server"></telerik:RadPersistenceManager>
<uc1:WebUserControl runat="server" ID="WebUserControl1" />
<uc1:WebUserControl runat="server" ID="WebUserControl2" />
</div>
</form>
</body>
</html>
WebUserControl
ASP.NET
<telerik:RadPersistenceManagerProxy ID="RadPersistenceManagerProxy1" runat="server">
<PersistenceSettings>
<telerik:PersistenceSetting ControlID="RadGrid1" />
</PersistenceSettings>
</telerik:RadPersistenceManagerProxy>
<asp:Button Text="Save State" ID="Button1" OnClick="Button1_Click" runat="server" />
<asp:Button Text="Load State" ID="Button2" OnClick="Button2_Click" runat="server" />
<telerik:RadGrid RenderMode="Lightweight" ID="RadGrid1" runat="server" OnNeedDataSource="RadGrid1_NeedDataSource" AutoGenerateColumns="false" AllowSorting="true" AllowFilteringByColumn="true"
AllowPaging="true">
<MasterTableView CommandItemDisplay="Top">
<Columns>
<telerik:GridBoundColumn DataField="Column1" HeaderText="Column1"></telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="Column2" HeaderText="Column2"></telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="Column3" HeaderText="Column3"></telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="Column4" HeaderText="Column4"></telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>