asp.netajaxupdatepanelprogress

Best "Loading" feedback for ASP.Net?


So, we have an ASP.Net application - fairly standard - and in there are lots of updatepanels, and postbacks.

On some pages we have

<ajax:UpdatePanelAnimationExtender ID="ae" runat="server" TargetControlID="updatePanel" BehaviorID="UpdateAnimation">
    <Animations>
        <OnUpdating>
            <FadeOut Duration="0.1" minimumOpacity=".3"  />
        </OnUpdating>
        <OnUpdated>
            <FadeIn minimumOpacity=".5" Duration="0" />
        </OnUpdated>
    </Animations>
</ajax:UpdatePanelAnimationExtender>

Which basically whites out the page when a postback is going on (but this clashes with modal dialog grey backgrounds). In some cases we have a progressupdate control which just has a spinny icon in the middle of the page.

But none of them seem particularly nice and all a bit clunky. They also require a lot of code in various places around the app.

What methods do other people use and find effective?


Solution

  • Like the others, I suggest to use the UpdateProgress in a modal popup.

    I will add this twist, put the popup, UpdateProgress and this code in a masterpage, so whenever you need it, just plug the masterpage to the content page.

     <script type="text/javascript">
     var ModalProgress ='<%= ModalProgress.ClientID %>';
      Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(beginReq); 
      Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endReq);    
      function beginReq(sender, args){     
      // shows the Popup     
      $find(ModalProgress).show();        
      }  
      function endReq(sender, args) 
      {     
      //  hide the Popup     
      $find(ModalProgress).hide(); 
      }
    
    </script>
    

    here some ref:

    http://mattberseth.com/blog/2007/07/modalpopup_as_an_ajax_progress.html

    http://vincexu.blogspot.com/2008/10/how-to-make-modalupdate-progress-bar-on.html