hai provato ad aggiungere un UpdateProgress alla pagina, è ciò che ti serve, basta aggiungere un
<asp:UpdateProgress ID="upProgress" runat="server">
<ProgressTemplate>
<style type="text/css">
.PRORESS_overlay {
position: fixed;
z-index: 98;
top: 0px;
left: 0px;
right: 0px;
bottom: 0px;
background-color: #aaa;
filter: alpha(opacity=80);
opacity: 0.8;
}
.PRORESS_overlayContent {
/*position: fixed;*/
z-index: 999;
margin-left: auto;
margin-right: auto;
width: 80px;
height: 80px;
}
.PRORESS_overlayContent img {
z-index: 999999;
padding-top: 300px;
}
</style>
<div class="PRORESS_overlay">
<div class="PRORESS_overlayContent">
<img src="/img/loading.gif" alt="Loading..." width="60" />
</div>
</div>
</ProgressTemplate>
</asp:UpdateProgress>
puoi anche aggiungere un parametro AssociatedUpdatePanelID con l'ID del UpdatePanel associato che ti fa vedere il caricamento solo quando quel'update panel viene ricaricato.