Partager via


AsyncPostBackTrigger Classe

Définition

Définit un événement de contrôle et un événement facultatif de contrôle comme déclencheur de contrôle de publication (postback) asynchrone qui provoque l'actualisation d'un contrôle UpdatePanel.

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
Héritage

Exemples

L’exemple suivant montre comment ajouter un AsyncPostBackTrigger contrôle de manière déclarative. Un Button contrôle qui se trouve en dehors d’un contrôle permet aux utilisateurs d’entrer UpdatePanel un terme de recherche à rechercher dans la Products table de la base de données Northwind. Un GridView contrôle qui se trouve à l’intérieur du UpdatePanel contrôle affiche les résultats. Le Button contrôle est spécifié en tant que déclencheur asynchrone pour le UpdatePanel contrôle.

<%@ 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>

Remarques

Utilisez le AsyncPostBackTrigger contrôle pour permettre aux contrôles d’être des déclencheurs pour un UpdatePanel contrôle. Les contrôles qui sont des déclencheurs pour un panneau de mise à jour entraînent une actualisation du contenu du panneau après une publication asynchrone. La définition d’un contrôle de déclencheur asynchrone est utile dans les scénarios suivants :

  • Pour les contrôles qui se trouvent en dehors d’un panneau.

  • Pour les contrôles qui se trouvent à l’intérieur d’un panneau lorsque la propriété a la ChildrenAsTriggers valeur false.

  • Pour les contrôles qui se trouvent à l’intérieur de panneaux imbriqués, afin de provoquer une actualisation des panneaux parents.

Le contrôle auquel le AsyncPostBackTrigger contrôle fait référence doit se trouver dans le même conteneur d’affectation de noms que le panneau de mise à jour pour lequel il s’agit d’un déclencheur. Les déclencheurs basés sur des contrôles dans d’autres conteneurs d’affectation de noms ne sont pas pris en charge.

Ajoutez AsyncPostBackTrigger des contrôles à l’aide de la boîte de dialogue Éditeur de collection UpdatePanelTrigger dans le concepteur ou en créant un Triggers élément de manière déclarative dans le UpdatePanel contrôle. La ControlID propriété est obligatoire, mais la EventName propriété est facultative. Si la EventName propriété n’est pas spécifiée, l’attribut DefaultEventAttribute du contrôle est utilisé pour déterminer l’événement par défaut. Par exemple, l’événement par défaut pour le Button contrôle est l’événement Click . La EventName propriété ne respecte pas la casse.

Vous pouvez également référencer un conteneur de noms en tant que déclencheur. Dans ce cas, tous les contrôles enfants du conteneur qui provoquent une publication sont considérés comme des déclencheurs pour le UpdatePanel contrôle.

L’ajout AsyncPostBackTrigger de contrôles par programmation n’est pas pris en charge. Pour inscrire un contrôle de publication par programmation, utilisez la RegisterAsyncPostBackControl méthode du ScriptManager contrôle . Appelez ensuite la Update méthode du UpdatePanel contrôle lorsque le contrôle revient.

Si vous définissez un contrôle à l’aide PostBackTrigger de et AsyncPostBackTrigger, une exception est levée.

Constructeurs

AsyncPostBackTrigger()

Initialise une nouvelle instance de la classe AsyncPostBackTrigger.

Propriétés

ControlID

Obtient ou définit le nom du contrôle qui déclenche la publication (postback) asynchrone d'un contrôle UpdatePanel.

EventName

Obtient ou définit l'événement de contrôle de publication (postback) qui déclenche la mise à jour d'un contrôle UpdatePanel.

Owner

Obtient une référence au contrôle UpdatePanel contrôle que le UpdatePanelTrigger vise.

(Hérité de UpdatePanelTrigger)

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
FindTargetControl(Boolean)

Recherche le contrôle spécifié dans la propriété ControlID.

(Hérité de UpdatePanelControlTrigger)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
HasTriggered()

Retourne une valeur qui indique si le déclencheur a été appelé.

Initialize()

Initialise le contrôle AsyncPostBackTrigger et détermine si l'événement nommé dans le déclencheur existe et est valide.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
OnEvent(Object, EventArgs)

Déclenche l'événement qui provoque la publication (postback) et l'actualisation d'un contrôle UpdatePanel.

ToString()

Retourne une représentation sous forme de chaîne du contrôle AsyncPostBackTrigger actuel.

S’applique à

Voir aussi