Cómo habilitar la interfaz de usuario una vez que la descarga haya comenzado en ASP.net

Estoy implementando una funcionalidad de export a Excel a través de ASP.net. tengo un button de control en una página. cuando hago clic en el button, el control va al evento click del button. allí realizo una llamada al procedimiento almacenado para get los datos de Excel. En el evento Click (codebind) tengo el siguiente código para download los datos en el file de Excel.

Response.Clear() Response.AddHeader("content-disposition", String.Format("attachment;filename={0}.csv", "Report")) Response.Charset = "" Response.ContentType = "application/vnd.xls" Response.Write("a,b,c") - sample output from SP. Response.Flush(); 

Todo esto funciona bien. el problema es que a veces el procedimiento tarda mucho time en ejecutarse, por lo que para evitar que el usuario se equivoque con la interfaz de usuario hasta que comience la descarga, tengo un código de JavaScript para desactivar la interfaz de usuario cuando se hace clic en el button de descarga. Esto también está funcionando bien. pero no puedo llamar a ningún código de JavaScript para volver a habilitar la interfaz de usuario, una vez que la descarga ha comenzado o justo antes de que comience la descarga. cuando trato de renderizar un script antes de response.clear (en el código anterior) y doy response.flush, me da un error que no puedo cambiar el encabezado de respuesta una vez que se envía al cliente. ¿Cómo puedo lograr esta funcionalidad?

Resumen de la pregunta? Quiero desactivar la interfaz de usuario desde el momento en que el usuario ha hecho clic en el button de descarga y hasta que comience la descarga. una vez que se inicia la descarga, quiero volver a habilitar la interfaz de usuario. Cómo puedo conseguir esto.

Gracias.