Usuário com melhor resposta
Exibir UpdateProgress durante o PostBack

Pergunta
-
Ola!
Eu tenho uma pagina ASP.NET funcionando com um UpdateProgress associado a um UpdatePanel.
O problema é que, durante o PostBack da página, o Updateprogress não aparece.
A página se comporta da seguinte forma:
1. Clico em um botão que é responsável pela abertura de um Popup via Javascript "window.open('popupPadrao.aspx','','height=246, width=502, top='+meio1+', left='+meio2+'');".
2. No popup, há um botão de confirmação que executa um postback na pagina "__DoPostBack('popup','Aprovar')"
3. Retorna para o evento PageLoad da pagina, verifica o EVENTARGUMENT e se verdadeiro, executa uma função que demora cerca de 2 minutos.
No passo 1, o Updateprogress aparece sem problema nenhum.
No Passo 3, o UpdateProgress não aparece.
Abaixo segue o código do PageLoad da pagina.
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Try If Not IsPostBack Then Else if Request("__EVENTARGUMNT") = "Aprovar" Then
Eu preciso que o UpdateProgress apareça durante este tempo, e não posso deixar de solicitar a confirmação da aprovação via popup, e a função de aprovação deve estar dentro do código da página,
AprovaFormulario() End If
End If Catch ex As Exception End Try End Sub
Alguem teria alguma solução?
Aceito qualquer opinião desde que dentro do requisito grifado acima.
Obrigado!!!
Rafael Beck
Rafael Beck
Respostas
-
Oi cara,
Olá Eduardo!
O problema e' que o updateprogress nao aparece no pageload. Veja se os links abaixo ajudam.
http://mattberseth.com/blog/2007/07/delay_load_an_updatepanel.html
http://encosia.com/2007/10/03/easy-incremental-status-updates-for-long-requests/
http://disturbedbuddha.wordpress.com/
Se a resposta foi util, favor marcar como tal.
Obrigado.
MCP, MCTS 2.0 Web Applications, MCTS 3.5 ASP.NET
Os links ajudam sim, para quem precisar é uma boa alternativa, principalmnte do do site encosia.com.
Eu não utilizei pois acabei tendo problemas para usar Response.Write() e Response.Flush().
No fim eu acabei optando por outra opção, no botão do Popup coloquei um código Javascript para chamar uma função da pagina anterior:
window.opener.retornoPopup();
E na função retornoPopup() fiz uma chamada ao evento click de um botão oculto na pagina.
function retornoPopup() { document.getElementById('ctl00_mainContent_btnRetornoPopup').click(); }
Ja adiantando, se alguem for utilizar esta opção, para ocultar o botão é necessário fazer através do código:
style="visibility: hidden;"
Caso contrario o evento click() não vai funcionar.
Rafael Beck- Marcado como Resposta RafaBeck quarta-feira, 15 de julho de 2009 17:30
Todas as Respostas
-
Oi cara,
O problema e' que o updateprogress nao aparece no pageload. Veja se os links abaixo ajudam.
http://mattberseth.com/blog/2007/07/delay_load_an_updatepanel.html
http://encosia.com/2007/10/03/easy-incremental-status-updates-for-long-requests/
http://disturbedbuddha.wordpress.com/
Se a resposta foi util, favor marcar como tal.
Obrigado.
MCP, MCTS 2.0 Web Applications, MCTS 3.5 ASP.NET- Sugerido como Resposta Harley Araujo terça-feira, 14 de julho de 2009 17:30
-
Oi cara,
Olá Eduardo!
O problema e' que o updateprogress nao aparece no pageload. Veja se os links abaixo ajudam.
http://mattberseth.com/blog/2007/07/delay_load_an_updatepanel.html
http://encosia.com/2007/10/03/easy-incremental-status-updates-for-long-requests/
http://disturbedbuddha.wordpress.com/
Se a resposta foi util, favor marcar como tal.
Obrigado.
MCP, MCTS 2.0 Web Applications, MCTS 3.5 ASP.NET
Os links ajudam sim, para quem precisar é uma boa alternativa, principalmnte do do site encosia.com.
Eu não utilizei pois acabei tendo problemas para usar Response.Write() e Response.Flush().
No fim eu acabei optando por outra opção, no botão do Popup coloquei um código Javascript para chamar uma função da pagina anterior:
window.opener.retornoPopup();
E na função retornoPopup() fiz uma chamada ao evento click de um botão oculto na pagina.
function retornoPopup() { document.getElementById('ctl00_mainContent_btnRetornoPopup').click(); }
Ja adiantando, se alguem for utilizar esta opção, para ocultar o botão é necessário fazer através do código:
style="visibility: hidden;"
Caso contrario o evento click() não vai funcionar.
Rafael Beck- Marcado como Resposta RafaBeck quarta-feira, 15 de julho de 2009 17:30