Classe sys.WebForms.PageRequestManager
Gerencia as atualizações de página parcial do servidor UpdatePanel controles no navegador. Além disso, define propriedades, eventos e métodos que podem ser usados para personalizar uma página da Web usando o script de cliente.
Namespace: Sys.WebForms
Herda: Nenhum
var prm = Sys.WebForms.PageRequestManager.getInstance();
Construtor
Você não criar uma nova instância do PageRequestManager classe diretamente. Em vez disso, uma instância está disponível quando o renderização parcial da página está habilitado. Chamar o getInstance método para obter a instância do PageRequestManager classe.
Membros
Nome |
Descrição |
---|---|
Inicializa uma nova instância do Classe sys.WebForms.PageRequestManager. |
|
Gerado antes de processamento de um começa postback assíncrono e a solicitação de postback é enviado ao servidor. |
|
Gerado após a conclusão um postback assíncrono e controle foi retornado ao navegador. |
|
Gerado durante a inicialização de postback assíncrono. |
|
Gerado depois de todo conteúdo da página é atualizado sistema autônomo resultado de um síncrono ou um postback assíncrono. |
|
Gerado depois que a resposta do servidor para um postback assíncrono é recebida, mas antes que qualquer conteúdo da página seja atualizado. |
|
Interrompe todas sistema autônomo atualizações que poderia ocorrer sistema autônomo resultado de um postback assíncrono. |
|
Libera recursos do ECMAScript (JavaScript) e desconecta eventos. |
|
Retorna a instância do PageRequestManager classe para a página. |
|
Sys.WebForms.PageRequestManager isInAsyncPostBack propriedade |
Retorna um valor que indica se o PageRequestManager objeto está processando um postback. |
Observação: |
---|
Esta classe contém membros particulares que oferecem suporte à infraestrutura de script de cliente e não se destinam ao uso diretamente no seu código. Nomes de membros particulares começam com um caractere de sublinhado ( _ ). |
Comentários
The PageRequestManager classe gerencia o renderização parcial da página no navegador. Você pode atualizar regiões na página usando um ou mais UpdatePanel controles e uma ScriptManager controle.
Você não criar uma instância do PageRequestManager diretamente. Quando o renderização parcial da página está ativado, uma instância do PageRequestManager classe está automaticamente disponível. Você pode acesso-lo por meio de getInstance método.
The PageRequestManager classe define eventos que você pode usar para personalizar o renderização parcial da página da sua página. A infra-estrutura cliente suporta ligação de evento automático semelhante à forma com que eventos da página são vinculados automaticamente a métodos, sistema autônomo Page_Load. A tabela a seguir lista os eventos do cliente que você pode usar e cenários em que você pode tratá-los. Os eventos são listados na tabela na ordem em que são chamados pelo PageRequestManager classe.
PageRequestManager evento |
Descrição |
---|---|
initializeRequest |
Gerado antes do processamento do inicia solicitação assíncrono. Você pode usar esse evento para cancelar um postback. |
beginRequest |
Gerado antes de processamento de um começa postback assíncrono e o postback é enviado ao servidor. Você pode usar esse evento para conjunto cabeçalhos de solicitação ou para iniciar uma animação que indica que a página está processando. |
pageLoading |
Gerado depois que a resposta do servidor para um postback assíncrono é recebida, mas antes que qualquer conteúdo da página seja atualizado. Você pode usar esse evento para fornecer um efeito de transição personalizada para conteúdo atualizado. |
pageLoaded |
Gerado após todo o conteúdo na página ser atualizado, como resultado de um síncrono ou assícrono postback. Você pode usar esse evento para fornecer um efeito de transição personalizada para conteúdo atualizado. |
endRequest |
Gerado após a conclusão um postback assíncrono e controle foi retornado ao navegador. Você pode usar esse evento para fornecer uma notificação aos usuários ou para registrar erros. |
Se a página contiver pelo menos um UpdatePanel controle e o ScriptManager do controle SupportsPartialRendering o valor é true (o valor padrão), a biblioteca JavaScript que define o PageRequestManager classe é registrado com o ScriptManager controlar e está disponível para a página.
Exemplo
O exemplo a seguir mostra como usar o beginRequest evento para exibir uma notificação de progresso durante postbacks assíncrono. The getInstance método será chamado para obter o corrente PageRequestManager instância. Script está incluído no manipuladores para o beginRequest e endRequest eventos.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void ProcessClick_Handler(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(2000);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>PageRequestManager beginRequest Example</title>
<style type="text/css">
body {
font-family: Tahoma;
}
div.AlertStyle
{
background-color: #FFC080;
top: 95%;
left: 1%;
height: 20px;
width: 270px;
position: absolute;
visibility: hidden;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<script type="text/javascript" language="javascript">
Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(BeginRequestHandler);
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function BeginRequestHandler(sender, args)
{
var elem = args.get_postBackElement();
ActivateAlertDiv('visible', 'AlertDiv', elem.value + ' processing...');
}
function EndRequestHandler(sender, args)
{
ActivateAlertDiv('hidden', 'AlertDiv', '');
}
function ActivateAlertDiv(visstring, elem, msg)
{
var adiv = $get(elem);
adiv.style.visibility = visstring;
adiv.innerHTML = msg;
}
</script>
<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" runat="Server">
<ContentTemplate>
<asp:Panel ID="Panel1" runat="server" GroupingText="Update Panel">
Last update:
<%= DateTime.Now.ToString()%>.
<br />
<asp:Button runat="server" ID="Button1" Text="Process 1" OnClick="ProcessClick_Handler" />
<asp:Button runat="server" ID="Button2" Text="Process 2" OnClick="ProcessClick_Handler" />
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
<div id="AlertDiv" class="AlertStyle">
</div>
</div>
</form>
</body>
</html>
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void ProcessClick_Handler(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(2000);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>PageRequestManager beginRequest Example</title>
<style type="text/css">
body {
font-family: Tahoma;
}
div.AlertStyle
{
background-color: #FFC080;
top: 95%;
left: 1%;
height: 20px;
width: 270px;
position: absolute;
visibility: hidden;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<script type="text/javascript" language="javascript">
Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(BeginRequestHandler);
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function BeginRequestHandler(sender, args)
{
var elem = args.get_postBackElement();
ActivateAlertDiv('visible', 'AlertDiv', elem.value + ' processing...');
}
function EndRequestHandler(sender, args)
{
ActivateAlertDiv('hidden', 'AlertDiv', '');
}
function ActivateAlertDiv(visstring, elem, msg)
{
var adiv = $get(elem);
adiv.style.visibility = visstring;
adiv.innerHTML = msg;
}
</script>
<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" runat="Server">
<ContentTemplate>
<asp:Panel ID="Panel1" runat="server" GroupingText="Update Panel">
Last update:
<%= DateTime.Now.ToString()%>.
<br />
<asp:Button runat="server" ID="Button1" Text="Process 1" OnClick="ProcessClick_Handler" />
<asp:Button runat="server" ID="Button2" Text="Process 2" OnClick="ProcessClick_Handler" />
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
<div id="AlertDiv" class="AlertStyle">
</div>
</div>
</form>
</body>
</html>