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!
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
>