For all the three approaches, I have used a image to show a spinning gear kind of a progress bar while the Update Panel is performing some action.

updatepanelanimation onupdating-13

If you don't want it to appear every time then you should not use the Update Progress control.

At the time that I answered your question I thought the Update Progress control was part of the Ajax Control Toolkit.

Since the animation framework is based on a hierarchy of animation classes, all the animations have the properties which runs its child animations sequentially, waiting for each to finish before starting the next.

To use these animations in the generic XML animation declaration syntax, we include their child animations as nested XML elements.

In the example below, we use the same to display progress while the Update Panel is updating its content.

For understanding purposes, we have emulated a time consuming operation by setting a delay of 3 seconds by using Thread. In the code shown above, we use the Associated Update Panel ID property of the Update Progress control to associate it with an Update Panel control.

For example, to have an element pulse and then fade out while scaling its size by 500%, we could declare the following: The animation framework also includes a number of animation actions that perform an instantaneous operation.

They differ from regular animations which perform an operation in small steps over a period of time.

If you're not using the Ajax Control Toolkit consider implementing Java Script function to handle the Page Requst Manager's Begin Request and End Request events (info on the Begin Request Event can be found here and info on the End Request Event can be found here.

You would have 2 Java Script functions that handle these events: The Page Request Manager has a Singleton pattern.

Another very simple option to display progress during an async postback is to use the Update Progress control.