AsyncPostBackTrigger Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Definisce un controllo e un evento facoltativo del controllo come trigger di controllo postback asincrono che causa l'aggiornamento di un UpdatePanel controllo.
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
- Ereditarietà
Esempio
Nell'esempio seguente viene illustrato come aggiungere un AsyncPostBackTrigger controllo in modo dichiarativo. Un Button controllo esterno a un UpdatePanel controllo consente agli utenti di immettere un termine di ricerca da trovare nella Products tabella del database Northwind. Un GridView controllo che si trova all'interno del UpdatePanel controllo mostra i risultati. Il Button controllo viene specificato come trigger asincrono per il UpdatePanel controllo .
<%@ 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>
Commenti
Usare il AsyncPostBackTrigger controllo per abilitare i controlli da attivare per un UpdatePanel controllo. I controlli attivati per un pannello di aggiornamento causano un aggiornamento del contenuto del pannello dopo un postback asincrono. La definizione di un controllo trigger asincrono è utile negli scenari seguenti:
Per i controlli esterni a un pannello.
Per i controlli all'interno di un pannello quando la ChildrenAsTriggers proprietà è
false.Per i controlli all'interno di pannelli annidati, per eseguire un aggiornamento dei pannelli padre.
Il controllo a cui fa riferimento il AsyncPostBackTrigger controllo deve trovarsi nello stesso contenitore di denominazione del pannello di aggiornamento per il quale si tratta di un trigger. I trigger basati su controlli in altri contenitori di denominazione non sono supportati.
Aggiungere AsyncPostBackTrigger controlli usando la finestra di dialogo Editor raccolta UpdatePanelTrigger nella finestra di progettazione o creando un Triggers elemento in modo dichiarativo nel UpdatePanel controllo . La ControlID proprietà è obbligatoria, ma la EventName proprietà è facoltativa. Se la EventName proprietà non viene specificata, l'attributo DefaultEventAttribute del controllo viene utilizzato per determinare l'evento predefinito. Ad esempio, l'evento predefinito per il Button controllo è l'evento Click . La EventName proprietà non fa distinzione tra maiuscole e minuscole.
È anche possibile fare riferimento a un contenitore di denominazione come trigger. In tal caso, tutti i controlli figlio nel contenitore che causano un postback vengono considerati trigger per il UpdatePanel controllo.
L'aggiunta AsyncPostBackTrigger di controlli a livello di codice non è supportata. Per registrare a livello di codice un controllo postback, utilizzare il RegisterAsyncPostBackControl metodo del ScriptManager controllo . Chiamare quindi il Update metodo del UpdatePanel controllo quando il controllo esegue il postback.
Se si definisce un controllo che usa sia PostBackTrigger che AsyncPostBackTrigger, viene generata un'eccezione.
Costruttori
| Nome | Descrizione |
|---|---|
| AsyncPostBackTrigger() |
Inizializza una nuova istanza di una AsyncPostBackTrigger classe . |
Proprietà
| Nome | Descrizione |
|---|---|
| ControlID |
Ottiene o imposta il nome del controllo che attiva un postback asincrono per un UpdatePanel controllo . |
| EventName |
Ottiene o imposta l'evento di controllo di postback che attiva l'aggiornamento di un UpdatePanel controllo. |
| Owner |
Ottiene un riferimento al UpdatePanel controllo UpdatePanelTrigger di destinazione. (Ereditato da UpdatePanelTrigger) |
Metodi
| Nome | Descrizione |
|---|---|
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| FindTargetControl(Boolean) |
Cerca il controllo specificato nella ControlID proprietà . (Ereditato da UpdatePanelControlTrigger) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| HasTriggered() |
Restituisce un valore che indica se il trigger è stato richiamato. |
| Initialize() |
Inizializza il AsyncPostBackTrigger controllo e determina se l'evento denominato nel trigger esiste ed è valido. |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| OnEvent(Object, EventArgs) |
Genera l'evento che attiverà un postback e l'aggiornamento di un UpdatePanel controllo. |
| ToString() |
Restituisce una rappresentazione di stringa del controllo corrente AsyncPostBackTrigger . |