UpdatePanel in incomplete state after using browser's back button

By · January 27, 2015 · 0 comments

I recently experienced an issue with an ASP.NET Web Forms page with various UpdatePanels. The page has two DropDownLists, the selection of one results in populating of possible values in the other, and the selection of the other results in enabling of a Button. Then if the Button is clicked the user is redirected to another website, based on their selection.

The problem is after the redirect to the other website, if the user then goes back to the original page, the first DropDownList is in its last state, but the second DropDownList is empty and to continue they must either select away from their last choice in the first DropDownList or refresh the page.

Ideally I would like to return the page and all controls to their last state, or make the page reset to as if it was accessed for the first time.

The ScriptManager history functionality could probably be used for this purpose, but a simple solution that worked for me was to disable all caching of the page, which results in the page being reset.

The following code might be a bit of overkill but does the job:
Response.Expires = 0;
Response.ExpiresAbsolute = DateTime.Now.AddYears(-2);
Response.AddHeader("pragma", "no-cache");
Response.AddHeader("cache-control", "private");
Response.CacheControl = "no-cache";
The answer came from this answer on ASP.NET forums.
ASP.NET Web Forms

Get the latest posts delivered to your inbox.


There are no comments yet. Be the first to leave a comment!

Leave a Comment

All comments are moderated and rel="nofollow" is in use. Avatars are sourced from gravatar.com – a globally recognised avatar.

Type the numbers from the picture above

About me
John Avis ...mostly about web development and programming, with a little bit of anything else related to the Internet, computers and technology.

profile for John at Stack Overflow, Q&A for professional and enthusiast programmers

Get the latest posts delivered to your inbox. *