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

Construtor sys.WebForms.PageRequestManager

Inicializa uma nova instância do Classe sys.WebForms.PageRequestManager.

Sys.WebForms.PageRequestManager beginRequest evento

Gerado antes de processamento de um começa postback assíncrono e a solicitação de postback é enviado ao servidor.

Sys.WebForms.PageRequestManager endRequest evento

Gerado após a conclusão um postback assíncrono e controle foi retornado ao navegador.

Sys.WebForms.PageRequestManager initializeRequest eventos

Gerado durante a inicialização de postback assíncrono.

Sys.WebForms.PageRequestManager pageLoaded evento

Gerado depois de todo conteúdo da página é atualizado sistema autônomo resultado de um síncrono ou um postback assíncrono.

Sys.WebForms.PageRequestManager pageLoading eventos

Gerado depois que a resposta do servidor para um postback assíncrono é recebida, mas antes que qualquer conteúdo da página seja atualizado.

Sys.WebForms.PageRequestManager abortPostBack método

Interrompe todas sistema autônomo atualizações que poderia ocorrer sistema autônomo resultado de um postback assíncrono.

Descarte sys.WebForms.PageRequestManager método

Libera recursos do ECMAScript (JavaScript) e desconecta eventos.

Sys.WebForms.PageRequestManager getInstance método

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çãoObservaçã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>

Consulte também

Referência

ScriptManager

UpdatePanel