Réponse acceptée !
Ouais moi aussi ca m'intéresse, mais je ne sais pas si .NET peut le gérer directement alors il faut ruser un peu.
Je l'avais fait sur une appli. Je vais essayer de texpliquer en gros de mémoire.
Avant de charger ta page tu ouvres une popup en javascript qui appel la page wait.aspx et tu met une variable de Session genre Session["waiting"]=1; au load de wait.aspx et tu la raffraichit toutes les secondes ou moins si tu veux en JS encore et apres tu charge ta page qui est longue avec un redirect ( evite dans wait.aspx mais juste apres le JS de popup pour eviter le problème sur la variable si la page longue va plus vite que le popup a ce charger...)
Et dans le raffraichissement de wait.aspx tu verifies a chaque fois si cette variable est a 1.
Dans ta page qui est longue a chargé dans levenement fin de chargement tu met ta variable de session à 2 ainsi lors du prochain chargement de wait.aspx la variable sera a 2 et la tu generes un JS pour fermer le popup.
Et voila

Jespere que j'ai été clair sur le principe...si il te manque des bout de code demande moi mais ca devrait pas etre compliquer si tu connait le JS et que tu c'est en générer du coté client à partir du code-behing
++