I've been tasked with applying a loading panel over a RadGrid that is nested in an UpdatePanel. I placed a RadAjaxManager and a RadAjaxLoadingPanel inside the update definition. The loading panel works, but for some reason, the paging on the RadGrid breaks, and it alternates between doing a full page refresh and a proper AJAX request. I've tried to replace the UpdatePanel with a RadAjaxPanel, but that didn't fix the problem, and in fact started mangling the RadGrid display.
Here's the code that's causing the problem. Any info would be appreciated. Thanks!
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Always">
<ContentTemplate>
<radG:RadAjaxManager ID="RadAjaxManager1" runat="server">
<AjaxSettings>
<radG:AjaxSetting AjaxControlID="btnSearch">
<UpdatedControls>
<radG:AjaxUpdatedControl ControlID="UpdatePanel1" LoadingPanelID="RadAjaxLoadingPanel1" />
</UpdatedControls>
</radG:AjaxSetting>
</AjaxSettings>
</radG:RadAjaxManager>
<radG:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" Skin="Office2007" >
</radG:RadAjaxLoadingPanel>
<radG:RadGrid ID="grdCampaignStatus" runat="server" PageSize="50" Width="100%" Height="565px" Skin="Office2007"
EnableEmbeddedSkins="true" GridLines="None" AllowPaging="true" AutoGenerateColumns="False"
AllowSorting="true" ShowGroupPanel="False" StatusBarSettings-ReadyText="Ready"
StatusBarSettings-LoadingText="Please Wait..." ShowStatusBar="True">
<ClientSettings AllowDragToGroup="True">
<Resizing AllowColumnResize="True" EnableRealTimeResize="True" ResizeGridOnColumnResize="True">
</Resizing>
<Scrolling AllowScroll="True" UseStaticHeaders="True"></Scrolling>
</ClientSettings>
<MasterTableView AllowNaturalSort="false" TableLayout="Fixed">
<Columns>
<radG:GridBoundColumn SortExpression="Campaign Id" AllowSorting="True" HeaderText="Campaign Id"
DataField="[Campaign Id]">
</radG:GridBoundColumn>
<radG:GridBoundColumn HeaderText="Campaign Name" AllowSorting="true" SortExpression="Campaign Name" DataField="[Campaign Name]">
</radG:GridBoundColumn>
<radG:GridBoundColumn HeaderText="Status" AllowSorting="true" SortExpression="Status" DataField="[Status]">
</radG:GridBoundColumn>
<radG:GridBoundColumn HeaderText="Placed Date" AllowSorting="true" SortExpression="Placed Date" DataField="[Placed Date]">
</radG:GridBoundColumn>
<radG:GridBoundColumn HeaderText="Requested launch Date/Time" AllowSorting="true" SortExpression="Requested Launch" DataField="[Requested Launch]">
</radG:GridBoundColumn>
<radG:GridBoundColumn HeaderText="Date/Time sent" AllowSorting="true" SortExpression="Time Sent" DataField="[Time Sent]">
</radG:GridBoundColumn>
<radG:GridBoundColumn HeaderText="First Name" AllowSorting="true" SortExpression="First Name" DataField="[First Name]">
</radG:GridBoundColumn>
<radG:GridBoundColumn HeaderText="Last Name" AllowSorting="true" SortExpression="Last Name" DataField="[Last Name]">
</radG:GridBoundColumn>
<radG:GridBoundColumn HeaderText="Reply To" AllowSorting="true" SortExpression="Reply To" DataField="[Reply To]">
</radG:GridBoundColumn>
<radG:GridBoundColumn HeaderText="Recipient Count" AllowSorting="true" HeaderStyle-Width="50" SortExpression="Recipient Count" DataField="[Recipient Count]">
</radG:GridBoundColumn>
<radG:GridTemplateColumn HeaderText="Run" UniqueName="TemplateColumn" HeaderStyle-Width="30">
<ItemTemplate>
<asp:Button ID="LinkButtonRedistribute" CommandName="ExecuteService" OnClientClick = "return confirm('Do you want to run the campaign service?');"
CommandArgument='<%# DataBinder.Eval(Container.DataItem,"[Campaign Id]") %>' runat="server"
Text="Run"></asp:Button>
</ItemTemplate>
</radG:GridTemplateColumn>
<radG:GridTemplateColumn HeaderText="Complete" UniqueName="CompleteColumn" >
<ItemTemplate>
<asp:Button ID="LinkButtonCompleteCampaign" Width="60" CommandName="CompleteCampaign" OnClientClick = "return confirm('This will only update the status of the campaign to Completed. This will not send any notification or send any emails. Do you want to complete the campaign? ');"
CommandArgument='<%# DataBinder.Eval(Container.DataItem,"[Campaign Id]") %>' runat="server"
Text="Complete"></asp:Button>
</ItemTemplate>
</radG:GridTemplateColumn>
</Columns>
</MasterTableView>
<PagerStyle Mode="NumericPages" />
</radG:RadGrid>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnSearch" EventName="Click" />
<asp:AsyncPostBackTrigger ControlID="uxCampaignStatus" EventName="SelectedIndexChanged" />
</Triggers>
</asp:UpdatePanel>