Artigo: 913721 - Última revisão: quinta-feira, 22 de Novembro de 2007 - Revisão: 1.4 Como implementar as funcionalidades de navegação avançada no ASP.NET 2.0
Nesta páginaINTRODUÇÃONavegação avançada está preterida no Microsoft ASP.NET 2.0 e já não é suportada pelo suporte técnico da Microsoft. Este artigo descreve como implementar as funcionalidades de navegação avançada no ASP.NET 2.0. Mais InformaçãoEm versões anteriores do ASP.NET, activar a navegação avançada utilizando a propriedade Page.SmartNavigation . Quando definir a propriedade Page.SmartNavigation como true , são activadas as seguintes funcionalidades de navegação avançada:
Como manter a posição de deslocamentoPara manter a posição de deslocamento de uma página Web depois de nova colocação, utilize a propriedade Page.MaintainScrollPositionOnPostBack . Para mais informações sobre a propriedade Page.MaintainScrollPositionOnPostBack , visite o seguinte Web site da Microsoft Developer Network (MSDN):http://msdn2.microsoft.com/en-us/library/system.web.ui.page.maintainscrollpositiononpostback.aspx
(http://msdn2.microsoft.com/en-us/library/system.web.ui.page.maintainscrollpositiononpostback.aspx)
Como manter o foco de elementoPara manter o foco de elemento numa página Web durante a navegação, utilize o método Page.SetFocus . Para mais informações sobre o método Page.SetFocus , visite o seguinte site da Web MSDN:http://msdn2.microsoft.com/en-us/library/system.web.ui.page.setfocus.aspx
(http://msdn2.microsoft.com/en-us/library/system.web.ui.page.setfocus.aspx)
Como manter apenas o estado de página Web mais recente na pasta de histórico do browser de WebPara impedir que um utilizador regressar às páginas Web anteriormente visitadas, tem de evitar páginas Web visitadas sejam adicionados à pasta do histórico Web browser. Além disso, tem de evitar postbacks gerados pelos controlos de servidor ASP.NET sejam adicionados à pasta do histórico Web browser. Se apenas o estado de página Web mais recente será mantido e não páginas Web estão na pasta do histórico Web browser, anterior não está disponível.Por predefinição, não pode modificar a pasta de histórico do Web browser através de programação. Para contornar esta restrição, utilize um dos seguintes métodos. Método 1: Desactivar a cache do browser da Web e utilizar variáveis de sessãoSe desactivar a cache do browser da Web, o Microsoft Internet Explorer mantém apenas os ponteiros para as páginas Web visitadas na pasta do histórico Web browser. Internet Explorer não mantém o conteúdo real para as páginas Web. Por este motivo, quando um utilizador clica em ' Anterior ' , o browser tem de submeter um pedido de página para o servidor Web. Utilizando variáveis de sessão ASP.NET, pode escrever um algoritmo que determina se o utilizador deve ser conseguir visualizar a página pedida. Se deverá ocorrer problemas na aplicação Web quando um utilizador visualizasse a página pedida, o servidor Web pode redireccionar o browser para a página actual em vez disso. Por conseguinte, nada aparece acontecer quando o utilizador clica em ' Anterior ' .Para desactivar a cache do browser da Web, utilize um dos seguintes métodos:
Método 2: Utilizar uma moldura oculta numa página WebEste método é semelhante ao mecanismo que é utilizado internamente pelo navegação avançada. Crie uma página Web que contém uma moldura visível e uma moldura de oculta. O exemplo de código HTML seguinte demonstra como efectuar este procedimento.Método 3: Utilizar o método location.replaceCrie uma página Web que executa um script do lado do cliente que chame o método location.replace . Neste caso, o browser carrega o conteúdo de um URL na janela activa. Uma vez que o conteúdo é substituído na janela activa, o browser não considera esta substituição a navegação entre páginas Web. Por conseguinte, não entradas são adicionadas para a pasta do histórico Web browser. O exemplo de código HTML seguinte demonstra como utilizar o método location.replace .http://msdn2.microsoft.com/en-us/library/ms536712.aspx
(http://msdn2.microsoft.com/en-us/library/ms536712.aspx)
Método 4: Utilizar o método window.history.forwardCrie uma página Web que executa um script do lado do cliente que chame o método window.history.forward . Neste caso, o browser avança automaticamente uma página na pasta do histórico Web browser. Por conseguinte, postbacks posteriores são adicionados à pasta de histórico do Web browser. Se um utilizador clica em ' Anterior ' , o utilizador é redireccionado para a página Web actual.Pode utilizar o método window.history.forward juntamente com o método location.replace . Quando utiliza estes métodos em conjunto, a navegação entre páginas Web e postbacks são processados correctamente. Para mais informações sobre o método window.history.forward , visite o seguinte site da Web MSDN: http://msdn2.microsoft.com/en-us/library/ms536426.aspx
(http://msdn2.microsoft.com/en-us/library/ms536426.aspx)
Método 5: Modificar a lógica da aplicação WebModificar a lógica da aplicação Web funcione correctamente quando um utilizador clica em ' Anterior ' . A aplicação da Web tem de manter a integridade de todos os dados submetidos e a integridade do estado do utilizador quando o utilizador clica em ' Anterior ' .Como minimizar o efeito de intermitência que poderão ocorrer durante a navegaçãoQuando um utilizador visualizasse uma página Web numa aplicação Web do ASP.NET que utiliza controlos de servidor, o utilizador poderão ocorrer um efeito de intermitência. O efeito de intermitência pode ocorrer quando o utilizador altera o valor de um controlo. Se o controlo gera uma nova colocação, o browser submete um pedido de um novo estado de página Web para o servidor Web. Quando o novo estado de página Web é apresentado no browser, pode ocorrer o efeito de intermitência.Existem não formas simples para eliminar este efeito cintilação, porque a página Web tem de ser composta novamente. Normalmente, este comportamento é evidente ao utilizador. Nota Quando a velocidade de ligação entre o cliente Web e o servidor Web seja muito rápida, o efeito de intermitência poderá ser unnoticeable. Para minimizar o efeito de intermitência, minimize o número de postbacks ou eliminar postbacks. Para o fazer, utilize um dos seguintes métodos, conforme adequado à situação. Método 1: Utilizar o Gestor de chamada de retorno de cliente do ASP.NET 2.0Utilize o Gestor de chamada de retorno de cliente do ASP.NET 2.0 para permitir que páginas Web submeter pedidos para o servidor da Web sem utilizar uma nova colocação completa. Uma vez que chamadas de retorno da cliente não incluir dados reposição, chamadas de retorno da cliente não force a página Web inteira para ser actualizado no browser. Isto minimiza o efeito de intermitência que poderão ocorrer durante a navegação.Para obter mais informações sobre o Gestor de chamada de retorno de cliente do ASP.NET 2.0, visite o seguinte site da Web MSDN: http://msdn.microsoft.com/msdnmag/issues/06/00/ASPNET20Overview/default.aspx
(http://msdn.microsoft.com/msdnmag/issues/06/00/ASPNET20Overview/default.aspx)
Para mais informações sobre como implementar as chamadas de retorno do cliente sem utilizar uma nova colocação, visite o seguinte site da Web MSDN: http://msdn2.microsoft.com/en-us/library/ms178208.aspx
(http://msdn2.microsoft.com/en-us/library/ms178208.aspx)
Método 2: Utilizar uma moldura oculta numa página WebCrie uma página Web que contém uma moldura visível e uma moldura de oculta. Para mais informações sobre como efectuar este procedimento, consulte o método 2 na secção "Como manter apenas o estado de página Web mais recente na pasta do Web browser histórico".ReferênciasPara mais informações sobre a propriedade de Page.SmartNavigation preterida no ASP.NET 2.0, visite o seguinte site da Web MSDN: http://msdn2.microsoft.com/en-us/library/system.web.ui.page.smartnavigation.aspx
(http://msdn2.microsoft.com/en-us/library/system.web.ui.page.smartnavigation.aspx)
Tradução automáticaIMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado. Clique aqui para ver a versão em Inglês deste artigo: 913721
(http://support.microsoft.com/kb/913721/en-us/
)
| Outros Recursos Outros Sites de Suporte
ComunidadesObtenha Ajuda AgoraTraduções de Artigos |






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email



Voltar ao topo