Compartilhar via


AsyncPostBackTrigger Classe

Definição

Define um controle e um evento opcional do controle como um gatilho de controle de postback assíncrono que faz o controle UpdatePanel ser atualizado.

public ref class AsyncPostBackTrigger : System::Web::UI::UpdatePanelControlTrigger
public class AsyncPostBackTrigger : System.Web.UI.UpdatePanelControlTrigger
type AsyncPostBackTrigger = class
    inherit UpdatePanelControlTrigger
Public Class AsyncPostBackTrigger
Inherits UpdatePanelControlTrigger
Herança

Exemplos

O exemplo a seguir mostra como adicionar um AsyncPostBackTrigger controle declarativamente. Um Button controle que está fora de um UpdatePanel controle permite que os usuários insiram um termo de pesquisa para localizar na Products tabela do banco de dados Northwind. Um GridView controle que está dentro do UpdatePanel controle mostra os resultados. O Button controle é especificado como um gatilho assíncrono para o UpdatePanel controle.

<%@ 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 Button1_Click(object sender, EventArgs e)
    {
        SqlDataSource1.SelectParameters["SearchTerm"].DefaultValue = 
            Server.HtmlEncode(TextBox1.Text);
        Label1.Text = "Searching for '" + 
            Server.HtmlEncode(TextBox1.Text) + "'";
    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>AsyncPostBackTrigger Example</title>
</head>
<body>
    <form id="form1" defaultbutton="Button1"
          defaultfocus="TextBox1" runat="server">
        <div>
            <asp:ScriptManager ID="ScriptManager1" runat="server" />
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <asp:Button ID="Button1" Text="Submit" 
                        OnClick="Button1_Click" runat="server"  />
            <asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" 
                             runat="server">
                <Triggers>
                  <asp:AsyncPostBackTrigger ControlID="Button1" />
                </Triggers>
                <ContentTemplate>
                    <hr />
                    <asp:Label ID="Label1" runat="server"/>
                    <br />
                    <asp:GridView ID="GridView1" runat="server" AllowPaging="True"
                        AllowSorting="True"
                        DataSourceID="SqlDataSource1">
                        <EmptyDataTemplate>
                        Enter a search term.
                        </EmptyDataTemplate>
                    </asp:GridView>
                    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
                        ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
                        SelectCommand="SELECT [ProductName], [UnitsInStock] FROM 
                        [Alphabetical list of products] WHERE ([ProductName] LIKE 
                        '%' + @SearchTerm + '%')">
                        <SelectParameters>
                            <asp:Parameter Name="SearchTerm" Type="String" />
                        </SelectParameters>
                    </asp:SqlDataSource>
                </ContentTemplate>
            </asp:UpdatePanel>
        </div>
    </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)

        SqlDataSource1.SelectParameters("SearchTerm").DefaultValue = _
            Server.HtmlEncode(TextBox1.Text)
        Label1.Text = "Searching for '" & _
            Server.HtmlEncode(TextBox1.Text) & "'"

    End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>AsyncPostBackTrigger Example</title>
</head>
<body>
    <form id="form1" defaultbutton="Button1"
          defaultfocus="TextBox1" runat="server">
        <div>
            <asp:ScriptManager ID="ScriptManager1" runat="server" />
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <asp:Button ID="Button1" Text="Submit" 
                        OnClick="Button1_Click" runat="server"  />
            <asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" 
                             runat="server">
                <Triggers>
                  <asp:AsyncPostBackTrigger ControlID="Button1" />
                </Triggers>
                <ContentTemplate>
                    <hr />
                    <asp:Label ID="Label1" runat="server"/>
                    <br />
                    <asp:GridView ID="GridView1" runat="server" AllowPaging="True"
                        AllowSorting="True"
                        DataSourceID="SqlDataSource1">
                        <EmptyDataTemplate>
                        Enter a search term.
                        </EmptyDataTemplate>
                    </asp:GridView>
                    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
                        ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
                        SelectCommand="SELECT [ProductName], [UnitsInStock] FROM 
                        [Alphabetical list of products] WHERE ([ProductName] LIKE 
                        '%' + @SearchTerm + '%')">
                        <SelectParameters>
                            <asp:Parameter Name="SearchTerm" Type="String" />
                        </SelectParameters>
                    </asp:SqlDataSource>
                </ContentTemplate>
            </asp:UpdatePanel>
        </div>
    </form>
</body>
</html>

Comentários

Use o AsyncPostBackTrigger controle para permitir que os controles sejam gatilhos para um UpdatePanel controle. Controles que são gatilhos para um painel de atualização causam uma atualização do conteúdo do painel após um postback assíncrono. Definir um controle de gatilho assíncrono é útil nos seguintes cenários:

  • Para controles que estão fora de um painel.

  • Para controles que estão dentro de um painel quando a ChildrenAsTriggers propriedade é false.

  • Para controles que estão dentro de painéis aninhados, para causar uma atualização dos painéis pai.

O controle de que as referências de AsyncPostBackTrigger controle devem estar no mesmo contêiner de nomenclatura que o painel de atualização para o qual ele é um gatilho. Não há suporte para gatilhos baseados em controles em outros contêineres de nomenclatura.

Adicione AsyncPostBackTrigger controles usando a caixa de diálogo Editor de Coleção UpdatePanelTrigger no designer ou criando um Triggers elemento declarativamente no UpdatePanel controle. A ControlID propriedade é necessária, mas a EventName propriedade é opcional. Se a EventName propriedade não for especificada, o DefaultEventAttribute atributo do controle será usado para determinar o evento padrão. Por exemplo, o evento padrão para o Button controle é o Click evento . A EventName propriedade não diferencia maiúsculas de minúsculas.

Você também pode referenciar um contêiner de nomenclatura como um gatilho. Nesse caso, todos os controles filho no contêiner que causam um postback são considerados gatilhos para o UpdatePanel controle.

Não há suporte para adicionar AsyncPostBackTrigger controles programaticamente. Para registrar programaticamente um controle de postback, use o RegisterAsyncPostBackControl método do ScriptManager controle . Em seguida, chame o Update método do UpdatePanel controle quando o controle retornar.

Se você definir um controle usando e PostBackTriggerAsyncPostBackTrigger, uma exceção será gerada.

Construtores

AsyncPostBackTrigger()

Inicializa uma nova instância de uma classe AsyncPostBackTrigger.

Propriedades

ControlID

Obtém ou define o nome do controle que dispara um postback assíncrono para um controle UpdatePanel.

EventName

Obtém ou define o evento de controle de postback que dispara um controle UpdatePanel a ser atualizado.

Owner

Obtém uma referência ao controle UpdatePanel a que o UpdatePanelTrigger tem como destino.

(Herdado de UpdatePanelTrigger)

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
FindTargetControl(Boolean)

Pesquisa o controle especificado na propriedade ControlID.

(Herdado de UpdatePanelControlTrigger)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
HasTriggered()

Retorna um valor que indica se o gatilho foi invocado.

Initialize()

Inicializa o controle AsyncPostBackTrigger e determina se o evento que é nomeado no gatilho existe e é válido.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
OnEvent(Object, EventArgs)

Aciona o evento que vai disparar um postback e uma atualização de um controle UpdatePanel.

ToString()

Retorna uma representação de cadeia de caracteres do controle AsyncPostBackTrigger atual.

Aplica-se a

Confira também