I thought I'd share this solution here to save anyone else the hours of tearing hair out that I've had.
I had a master page and user controls using RadAjaxProxyManagers and the RadAjaxLoadingPanel was displaying for some buttons and not others. I played around with the setup of the page and narrowed it down to the buttons that had causesvalidation="false" were the ones that worked as expected.
This however was a red herring, as I eventually discovered the problem was caused by having ClientIDMode set to Static on the radbuttons! Why does setting ClientIDMode="Static" break showing the loading panel, but everything else functions fine?
I had a master page and user controls using RadAjaxProxyManagers and the RadAjaxLoadingPanel was displaying for some buttons and not others. I played around with the setup of the page and narrowed it down to the buttons that had causesvalidation="false" were the ones that worked as expected.
This however was a red herring, as I eventually discovered the problem was caused by having ClientIDMode set to Static on the radbuttons! Why does setting ClientIDMode="Static" break showing the loading panel, but everything else functions fine?
<
asp:Content
ID
=
"bodyPlaceholder"
ContentPlaceHolderID
=
"BodyPlaceHolder"
runat
=
"server"
>
<
div
id
=
"wrapper"
runat
=
"server"
>
<!-- various grids etc -->
<
div
>
<
div
class
=
"left"
>
<
telerik:RadButton
runat
=
"server"
ID
=
"addButton"
ClientIDMode
=
"Static"
Text
=
"Add"
OnClick
=
"Add"
/>
</
div
>
<
div
class
=
"right"
>
<
telerik:RadButton
runat
=
"server"
ID
=
"okButton"
ClientIDMode
=
"Static"
Text
=
"OK"
OnClick
=
"Ok"
/>
<
telerik:RadButton
runat
=
"server"
ID
=
"cancelButton"
ClientIDMode
=
"Static"
Text
=
"Cancel"
OnClick
=
"Cancel"
CausesValidation
=
"false"
/>
</
div
>
<
div
class
=
"clear"
>
</
div
>
</
div
>
</
div
>
<
telerik:RadAjaxManagerProxy
runat
=
"server"
ID
=
"ajaxProxy"
ClientIDMode
=
"Static"
>
<
AjaxSettings
>
<
telerik:AjaxSetting
AjaxControlID
=
"ajaxProxy"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"wrapper"
LoadingPanelID
=
"loadingPanel"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"wrapper"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"wrapper"
LoadingPanelID
=
"loadingPanel"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
</
AjaxSettings
>
</
telerik:RadAjaxManagerProxy
>
<
telerik:RadAjaxLoadingPanel
runat
=
"server"
ID
=
"loadingPanel"
/>
</
asp:Content
>