UpdatePanel Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Permet aux sections d’une page d’être partiellement affichées sans publication.
public ref class UpdatePanel : System::Web::UI::Control
public ref class UpdatePanel : System::Web::UI::Control, System::Web::UI::IAttributeAccessor
[System.Drawing.ToolboxBitmap(typeof(EmbeddedResourceFinder), "System.Web.Resources.UpdatePanel.bmp")]
public class UpdatePanel : System.Web.UI.Control
[System.Drawing.ToolboxBitmap(typeof(EmbeddedResourceFinder), "System.Web.Resources.UpdatePanel.bmp")]
public class UpdatePanel : System.Web.UI.Control, System.Web.UI.IAttributeAccessor
[<System.Drawing.ToolboxBitmap(typeof(EmbeddedResourceFinder), "System.Web.Resources.UpdatePanel.bmp")>]
type UpdatePanel = class
inherit Control
[<System.Drawing.ToolboxBitmap(typeof(EmbeddedResourceFinder), "System.Web.Resources.UpdatePanel.bmp")>]
type UpdatePanel = class
inherit Control
interface IAttributeAccessor
Public Class UpdatePanel
Inherits Control
Public Class UpdatePanel
Inherits Control
Implements IAttributeAccessor
- Héritage
- Attributs
- Implémente
Exemples
Les exemples suivants montrent différentes utilisations du UpdatePanel contrôle.
Contrôles à l’intérieur d’un contrôle UpdatePanel
L’exemple suivant montre comment placer des contrôles à l’intérieur d’un UpdatePanel contrôle pour réduire le scintillement de l’écran lorsque vous publiez sur le serveur. Dans cet exemple, un Calendar contrôle et un DropDownList contrôle se trouvent à l’intérieur d’un UpdatePanel contrôle. Par défaut, la UpdateMode propriété est Always et la ChildrenAsTriggers propriété est true. Par conséquent, les contrôles enfants du panneau provoquent une publication asynchrone.
<%@ 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">
void DropDownSelection_Change(Object sender, EventArgs e)
{
Calendar1.DayStyle.BackColor =
System.Drawing.Color.FromName(ColorList.SelectedItem.Value);
}
protected void Calendar1_SelectionChanged(object sender, EventArgs e)
{
SelectedDate.Text =
Calendar1.SelectedDate.ToString();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>UpdatePanel Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1"
runat="server" />
<asp:UpdatePanel ID="UpdatePanel1"
runat="server">
<ContentTemplate>
<asp:Calendar ID="Calendar1"
ShowTitle="True"
OnSelectionChanged="Calendar1_SelectionChanged"
runat="server" />
<div>
Background:
<br />
<asp:DropDownList ID="ColorList"
AutoPostBack="True"
OnSelectedIndexChanged="DropDownSelection_Change"
runat="server">
<asp:ListItem Selected="True" Value="White">
White </asp:ListItem>
<asp:ListItem Value="Silver">
Silver </asp:ListItem>
<asp:ListItem Value="DarkGray">
Dark Gray </asp:ListItem>
<asp:ListItem Value="Khaki">
Khaki </asp:ListItem>
<asp:ListItem Value="DarkKhaki"> D
ark Khaki </asp:ListItem>
</asp:DropDownList>
</div>
<br />
Selected date:
<asp:Label ID="SelectedDate"
runat="server">None.</asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
<br />
</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">
Sub DropDownSelection_Change(ByVal Sender As Object, ByVal E As EventArgs)
Calendar1.DayStyle.BackColor = _
System.Drawing.Color.FromName(ColorList.SelectedItem.Value)
End Sub
Protected Sub Calendar1_SelectionChanged(ByVal Sender As Object, ByVal E As EventArgs)
SelectedDate.Text = Calendar1.SelectedDate.ToString()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>UpdatePanel Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1"
runat="server" />
<asp:UpdatePanel ID="UpdatePanel1"
runat="server">
<ContentTemplate>
<asp:Calendar ID="Calendar1"
ShowTitle="True"
OnSelectionChanged="Calendar1_SelectionChanged"
runat="server" />
<div>
Background:
<br />
<asp:DropDownList ID="ColorList"
AutoPostBack="True"
OnSelectedIndexChanged="DropDownSelection_Change"
runat="server">
<asp:ListItem Selected="True" Value="White">
White </asp:ListItem>
<asp:ListItem Value="Silver">
Silver </asp:ListItem>
<asp:ListItem Value="DarkGray">
Dark Gray </asp:ListItem>
<asp:ListItem Value="Khaki">
Khaki </asp:ListItem>
<asp:ListItem Value="DarkKhaki"> D
ark Khaki </asp:ListItem>
</asp:DropDownList>
</div>
<br />
Selected date:
<asp:Label ID="SelectedDate"
runat="server">None.</asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
<br />
</div>
</form>
</body>
</html>
Scénario maître/détail avec les contrôles UpdatePanel
Dans l’exemple suivant, un UpdatePanel contrôle est utilisé dans un scénario maître/détail qui affiche les commandes et les détails des commandes de la base de données Northwind. Un UpdatePanel contrôle contient le GridView contrôle qui affiche une liste de commandes. Un deuxième UpdatePanel contrôle contient un DetailsView contrôle qui affiche les détails d’une commande. Lorsque vous sélectionnez une commande dans la première table, les détails de cette commande sont affichés dans le deuxième tableau. La deuxième table est mise à jour de façon asynchrone en fonction de la sélection dans la première table. Les opérations de tri et de pagination dans la table récapitulative commandes provoquent également des mises à jour partielles.
<%@ 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 GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
SqlDataSource2.SelectParameters["OrderID"].DefaultValue =
GridView1.SelectedDataKey.Value.ToString();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>UpdatePanel Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1"
runat="server" />
<asp:UpdatePanel ID="OrdersPanel"
UpdateMode="Conditional"
runat="server">
<ContentTemplate>
<asp:GridView ID="GridView1"
AllowPaging="True"
AllowSorting="True"
Caption="Orders"
DataKeyNames="OrderID"
DataSourceID="SqlDataSource1"
OnSelectedIndexChanged="GridView1_SelectedIndexChanged"
runat="server" >
<Columns>
<asp:CommandField ShowSelectButton="True"></asp:CommandField>
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1"
runat="server"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand="SELECT [OrderID], [CustomerID], [EmployeeID], [OrderDate] FROM [Orders]">
</asp:SqlDataSource>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="OrderDetailsPanel"
UpdateMode="Always"
runat="server">
<ContentTemplate>
<asp:DetailsView ID="DetailsView1"
Caption="Order Details"
DataKeyNames="OrderID,ProductID"
DataSourceID="SqlDataSource2"
runat="server">
<EmptyDataTemplate>
<i>Select a row from the Orders table.</i>
</EmptyDataTemplate>
</asp:DetailsView>
<asp:SqlDataSource ID="SqlDataSource2"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand="SELECT [OrderID], [ProductID], [UnitPrice], [Quantity], [Discount] FROM [Order Details] WHERE ([OrderID] = @OrderID)"
runat="server">
<SelectParameters>
<asp:Parameter Name="OrderID"
Type="Int32" />
</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 GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
SqlDataSource2.SelectParameters("OrderID").DefaultValue = _
GridView1.SelectedDataKey.Value.ToString()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>UpdatePanel Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1"
runat="server" />
<asp:UpdatePanel ID="OrdersPanel"
UpdateMode="Conditional"
runat="server">
<ContentTemplate>
<asp:GridView ID="GridView1"
AllowPaging="True"
AllowSorting="True"
Caption="Orders"
DataKeyNames="OrderID"
DataSourceID="SqlDataSource1"
OnSelectedIndexChanged="GridView1_SelectedIndexChanged"
runat="server" >
<Columns>
<asp:CommandField ShowSelectButton="True"></asp:CommandField>
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1"
runat="server"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand="SELECT [OrderID], [CustomerID], [EmployeeID], [OrderDate] FROM [Orders]">
</asp:SqlDataSource>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="OrderDetailsPanel"
UpdateMode="Always"
runat="server">
<ContentTemplate>
<asp:DetailsView ID="DetailsView1"
Caption="Order Details"
DataKeyNames="OrderID,ProductID"
DataSourceID="SqlDataSource2"
runat="server">
<EmptyDataTemplate>
<i>Select a row from the Orders table.</i>
</EmptyDataTemplate>
</asp:DetailsView>
<asp:SqlDataSource ID="SqlDataSource2"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand="SELECT [OrderID], [ProductID], [UnitPrice], [Quantity], [Discount] FROM [Order Details] WHERE ([OrderID] = @OrderID)"
runat="server">
<SelectParameters>
<asp:Parameter Name="OrderID"
Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</form>
</body>
</html>
Si vous placez un contrôle à l’intérieur d’un GridViewUpdatePanel contrôle, la définition de la GridView propriété du EnableSortingAndPagingCallbacks contrôle n’est true pas prise en charge. Toutefois, étant donné que le UpdatePanel contrôle prend en charge les postbacks asynchrones, tous les postbacks qui modifient le GridView contrôle à l’intérieur d’un UpdatePanel contrôle entraînent le même comportement que les rappels de tri et de pagination.
Utilisation d’un contrôle UpdatePanel dans un modèle
Dans l’exemple suivant, un UpdatePanel contrôle est utilisé dans le modèle d’élément d’un GridView contrôle. UpdatePanel les contrôles de chaque ligne de données sont générés automatiquement. Le contrôle de UpdatePanel chaque ligne contient un Label contrôle pour afficher la quantité de l’élément dans cette ligne et un Button contrôle pour diminuer et augmenter la quantité.
<%@ 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">
private void ChangeQuantity(object sender, int delta)
{
Label quantityLabel = (Label)((Button)sender).FindControl("QuantityLabel");
int currentQuantity = Int32.Parse(quantityLabel.Text);
currentQuantity = Math.Max(0, currentQuantity + delta);
quantityLabel.Text = currentQuantity.ToString(System.Globalization.CultureInfo.InvariantCulture);
}
private void OnDecreaseQuantity(object sender, EventArgs e)
{
ChangeQuantity(sender, -1);
}
private void OnIncreaseQuantity(object sender, EventArgs e)
{
ChangeQuantity(sender, 1);
}
protected void Button1_Click(object sender, EventArgs e)
{
StringBuilder sb = new StringBuilder();
sb.Append("Beverage order:<br/>");
foreach (GridViewRow row in GridView1.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
Label quantityLabel = (Label)row.FindControl("QuantityLabel");
int currentQuantity = Int32.Parse(quantityLabel.Text);
sb.Append(row.Cells[0].Text + " : " + currentQuantity + "<br/>");
}
}
SummaryLabel.Text = sb.ToString();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>UpdatePanel Inside GridView Template Example </title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1"
runat="server" />
<asp:GridView ID="GridView1"
AutoGenerateColumns="False"
DataSourceID="SqlDataSource1"
runat="server">
<Columns>
<asp:BoundField DataField="ProductName"
HeaderText="ProductName" />
<asp:BoundField DataField="UnitPrice"
HeaderText="UnitPrice" />
<asp:TemplateField HeaderText="Quantity">
<ItemTemplate>
<asp:UpdatePanel ID="QuantityUpdatePanel"
UpdateMode="Conditional"
runat="server" >
<ContentTemplate>
<asp:Label ID="QuantityLabel"
Text="0"
runat="server" />
<asp:Button ID="DecreaseQuantity"
Text="-"
OnClick="OnDecreaseQuantity"
runat="server" />
<asp:Button ID="IncreaseQuantity"
Text="+"
OnClick="OnIncreaseQuantity"
runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:UpdatePanel ID="SummaryUpdatePanel"
UpdateMode="Conditional"
runat="server">
<ContentTemplate>
<asp:Button ID="Button1"
OnClick="Button1_Click"
Text="Get Summary"
runat="server" />
<br />
<asp:Label ID="SummaryLabel"
runat="server">
</asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
<asp:SqlDataSource ID="SqlDataSource1"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand="SELECT [ProductName], [UnitPrice] FROM
[Alphabetical list of products] WHERE ([CategoryName]
LIKE '%' + @CategoryName + '%')"
runat="server">
<SelectParameters>
<asp:Parameter DefaultValue="Beverages"
Name="CategoryName"
Type="String" />
</SelectParameters>
</asp:SqlDataSource>
</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">
Private Sub ChangeQuantity(ByVal Sender As Button, ByVal delta As Integer)
Dim quantityLabel As Label = CType(Sender.FindControl("QuantityLabel"), Label)
Dim currentQuantity As Integer = Int32.Parse(quantityLabel.Text)
currentQuantity = Math.Max(0, currentQuantity + delta)
quantityLabel.Text = currentQuantity.ToString(System.Globalization.CultureInfo.InvariantCulture)
End Sub
Private Sub OnDecreaseQuantity(ByVal Sender As Object, ByVal E As EventArgs)
ChangeQuantity(Sender, -1)
End Sub
Private Sub OnIncreaseQuantity(ByVal Sender As Object, ByVal E As EventArgs)
ChangeQuantity(Sender, 1)
End Sub
Protected Sub Button1_Click(ByVal Sender As Object, ByVal E As EventArgs)
Dim sb As New StringBuilder()
sb.Append("Beverage order:<br/>")
For Each row As GridViewRow In GridView1.Rows
If row.RowType = DataControlRowType.DataRow Then
Dim quantityLabel As Label = CType(row.FindControl("QuantityLabel"), Label)
Dim currentQuantity As Int32 = Int32.Parse(quantityLabel.Text)
sb.Append(row.Cells(0).Text + " : " & currentQuantity & "<br/>")
End If
Next
SummaryLabel.Text = sb.ToString()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>UpdatePanel Inside GridView Template Example </title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1"
runat="server" />
<asp:GridView ID="GridView1"
AutoGenerateColumns="False"
DataSourceID="SqlDataSource1"
runat="server">
<Columns>
<asp:BoundField DataField="ProductName"
HeaderText="ProductName" />
<asp:BoundField DataField="UnitPrice"
HeaderText="UnitPrice" />
<asp:TemplateField HeaderText="Quantity">
<ItemTemplate>
<asp:UpdatePanel ID="QuantityUpdatePanel"
runat="server" >
<ContentTemplate>
<asp:Label ID="QuantityLabel"
Text="0"
runat="server" />
<asp:Button ID="DecreaseQuantity"
Text="-"
OnClick="OnDecreaseQuantity"
runat="server" />
<asp:Button ID="IncreaseQuantity"
Text="+"
OnClick="OnIncreaseQuantity"
runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:UpdatePanel ID="SummaryUpdatePanel"
runat="server">
<ContentTemplate>
<asp:Button ID="Button1"
OnClick="Button1_Click"
Text="Get Summary"
runat="server" />
<br />
<asp:Label ID="SummaryLabel"
runat="server">
</asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
<asp:SqlDataSource ID="SqlDataSource1"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand="SELECT [ProductName], [UnitPrice] FROM
[Alphabetical list of products] WHERE ([CategoryName]
LIKE '%' + @CategoryName + '%')"
runat="server">
<SelectParameters>
<asp:Parameter DefaultValue="Beverages"
Name="CategoryName"
Type="String" />
</SelectParameters>
</asp:SqlDataSource>
</div>
</form>
</body>
</html>
Remarques
Dans cette rubrique :
Présentation
UpdatePanel les contrôles constituent une partie centrale de la fonctionnalité AJAX dans ASP.NET. Ils sont utilisés avec le contrôle pour activer le ScriptManager rendu de page partielle. Le rendu de pages partielles réduit le besoin de postbacks synchrones et de mises à jour de page complètes lorsque seule une partie de la page doit être mise à jour. Le rendu de page partielle améliore l’expérience utilisateur, car il réduit le scintillement de l’écran qui se produit pendant une publication de page complète et améliore l’interactivité de page web.
Actualisation du contenu UpdatePanel
Lorsque le rendu de page partielle est activé, un contrôle peut effectuer une publication qui met à jour l’intégralité de la page ou une publication asynchrone qui met à jour le contenu d’un ou UpdatePanel plusieurs contrôles. Si un contrôle provoque une publication asynchrone et met à jour un UpdatePanel contrôle dépend des éléments suivants :
Si la UpdateMode propriété du UpdatePanel contrôle est définie Alwayssur , le UpdatePanel contenu du contrôle est mis à jour sur chaque publication qui provient de la page. Cela inclut des postbacks asynchrones à partir de contrôles qui se trouvent à l’intérieur d’autres UpdatePanel contrôles et des postbacks à partir de contrôles qui ne sont pas à l’intérieur UpdatePanel des contrôles.
Si la UpdateMode propriété est définie Conditionalsur , le UpdatePanel contenu du contrôle est mis à jour dans les circonstances suivantes :
Lorsque vous appelez explicitement la Update méthode du UpdatePanel contrôle.
Lorsque le UpdatePanel contrôle est imbriqué à l’intérieur d’un autre UpdatePanel contrôle et que le panneau parent est mis à jour.
Lorsqu’un postback est dû à un contrôle défini comme déclencheur à l’aide de la
Triggerspropriété du UpdatePanel contrôle. Dans ce scénario, le contrôle déclenche explicitement une mise à jour du contenu du panneau. Le contrôle peut être à l’intérieur ou à l’extérieur du UpdatePanel contrôle auquel le déclencheur est associé.Lorsque la ChildrenAsTriggers propriété est définie
truesur et qu’un contrôle enfant du UpdatePanel contrôle provoque une publication différée. Les contrôles enfants des contrôles imbriqués UpdatePanel n’entraînent pas de mise à jour vers le contrôle externe UpdatePanel , sauf s’ils sont explicitement définis comme déclencheurs.
La combinaison de la définition de la ChildrenAsTriggers propriété sur false et de la UpdateMode propriété à Always n’est pas autorisée et lève une exception.
Lorsque le UpdatePanel contrôle effectue un billet asynchrone, il ajoute un en-tête HTTP personnalisé. Certains proxys suppriment cet en-tête HTTP personnalisé. Si cela se produit, le serveur gère la requête en tant que publication régulière, ce qui provoque une erreur cliente. Pour résoudre ce problème, insérez un champ de formulaire personnalisé lorsque vous effectuez des publications asynchrones. Vérifiez ensuite l’en-tête ou le champ de formulaire personnalisé dans le code du serveur.
Utilisation de UpdatePanel
Vous pouvez utiliser plusieurs UpdatePanel contrôles pour mettre à jour plusieurs régions de page indépendamment. Lorsque la page qui contient un ou plusieurs UpdatePanel contrôles est rendue, tout le contenu de tous les UpdatePanel contrôles est rendu et envoyé au navigateur. Lors des publications asynchrones suivantes, le contenu de chaque UpdatePanel contrôle peut ne pas être mis à jour en fonction des paramètres du panneau et de la logique client ou serveur pour les panneaux individuels.
Vous pouvez également utiliser UpdatePanel des contrôles pour les éléments suivants :
Dans les contrôles utilisateur.
Sur les pages maîtres et de contenu.
Imbriqué à l’intérieur d’autres UpdatePanel contrôles.
À l’intérieur de contrôles modèles tels que le ou Repeater les GridView contrôles.
UpdatePanel les contrôles peuvent être ajoutés de manière déclarative ou programmatique.
Vous pouvez ajouter un UpdatePanel contrôle par programmation, mais vous ne pouvez pas ajouter de déclencheurs par programmation. Pour créer un comportement de type déclencheur, vous pouvez inscrire un contrôle sur la page en tant que contrôle de publication asynchrone. Pour ce faire, appelez la RegisterAsyncPostBackControl méthode du ScriptManager contrôle. Vous pouvez ensuite créer un gestionnaire d’événements qui s’exécute en réponse à la publication asynchrone et, dans le gestionnaire, appeler la Update méthode du UpdatePanel contrôle.
Application de styles
Le UpdatePanel contrôle accepte les attributs expando. Cela vous permet de définir une classe CSS pour les éléments HTML rendus par les contrôles. Par exemple, vous pouvez créer le balisage indiqué dans l’exemple suivant :
<asp:UpdatePanel runat="server" class="myStyle">
</asp:UpdatePanel>
Le balisage de l’exemple précédent affiche du code HTML similaire à ce qui suit lorsque la page s’exécute :
<div id="ctl00_MainContent_UpdatePanel1" class="MyStyle">
</div>
Syntaxe déclarative
<asp:UpdatePanel
ChildrenAsTriggers="True|False"
EnableTheming="True|False"
EnableViewState="True|False"
ID="string"
OnDataBinding="DataBinding event handler"
OnDisposed="Disposed event handler"
OnInit="Init event handler"
OnLoad="Load event handler"
OnPreRender="PreRender event handler"
OnUnload="Unload event handler"
RenderMode="Block|Inline"
runat="server"
SkinID="string"
UpdateMode="Always|Conditional"
Visible="True|False"
>
<ContentTemplate>
<!-- child controls -->
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger
ControlID="string"
EventName="string"
/>
<asp:PostBackTrigger
ControlID="string"
/>
</Triggers>
</asp:UpdatePanel>
Constructeurs
| Nom | Description |
|---|---|
| UpdatePanel() |
Initialise une nouvelle instance de la classe UpdatePanel. |
Propriétés
| Nom | Description |
|---|---|
| Adapter |
Obtient l’adaptateur spécifique au navigateur pour le contrôle. (Hérité de Control) |
| AppRelativeTemplateSourceDirectory |
Obtient ou définit le répertoire virtuel relatif à l’application du ou UserControl de l’objet Page qui contient ce contrôle. (Hérité de Control) |
| Attributes |
Obtient la collection d’attributs css (Cascading Style Sheet) du UpdatePanel contrôle. |
| BindingContainer |
Obtient le contrôle qui contient la liaison de données de ce contrôle. (Hérité de Control) |
| ChildControlsCreated |
Obtient une valeur qui indique si les contrôles enfants du contrôle serveur ont été créés. (Hérité de Control) |
| ChildrenAsTriggers |
Obtient ou définit une valeur qui indique si les publications à partir de contrôles enfants immédiats d’une UpdatePanel mise à jour du contenu du panneau sont mises à jour. |
| ClientID |
Obtient l’ID de contrôle pour le balisage HTML généré par ASP.NET. (Hérité de Control) |
| ClientIDMode |
Obtient ou définit l’algorithme utilisé pour générer la valeur de la ClientID propriété. (Hérité de Control) |
| ClientIDSeparator |
Obtient une valeur de caractère représentant le caractère séparateur utilisé dans la ClientID propriété. (Hérité de Control) |
| ContentTemplate |
Obtient ou définit le modèle qui définit le contenu du UpdatePanel contrôle. |
| ContentTemplateContainer |
Obtient un objet de contrôle auquel vous pouvez ajouter par programmation des contrôles enfants. |
| Context |
Obtient l’objet HttpContext associé au contrôle serveur pour la requête Web actuelle. (Hérité de Control) |
| Controls |
Obtient l’objet ControlCollection qui contient les contrôles enfants du UpdatePanel contrôle. |
| DataItemContainer |
Obtient une référence au conteneur d’affectation de noms si le conteneur d’affectation de IDataItemContainernoms implémente . (Hérité de Control) |
| DataKeysContainer |
Obtient une référence au conteneur d’affectation de noms si le conteneur d’affectation de IDataKeysControlnoms implémente . (Hérité de Control) |
| DesignMode |
Obtient une valeur indiquant si un contrôle est utilisé sur une surface de conception. (Hérité de Control) |
| EnableTheming |
Obtient ou définit une valeur indiquant si les thèmes s’appliquent à ce contrôle. (Hérité de Control) |
| EnableViewState |
Obtient ou définit une valeur indiquant si le contrôle serveur conserve son état d’affichage et l’état d’affichage des contrôles enfants qu’il contient, au client demandeur. (Hérité de Control) |
| Events |
Obtient une liste de délégués de gestionnaire d’événements pour le contrôle. Cette propriété est en lecture seule. (Hérité de Control) |
| HasChildViewState |
Obtient une valeur indiquant si les contrôles enfants du contrôle serveur actuel ont des paramètres d’état d’affichage enregistrés. (Hérité de Control) |
| ID |
Obtient ou définit l’identificateur programmatique affecté au contrôle serveur. (Hérité de Control) |
| IdSeparator |
Obtient le caractère utilisé pour séparer les identificateurs de contrôle. (Hérité de Control) |
| IsChildControlStateCleared |
Obtient une valeur indiquant si les contrôles contenus dans ce contrôle ont un état de contrôle. (Hérité de Control) |
| IsInPartialRendering |
Obtient une valeur qui indique si le UpdatePanel contrôle est mis à jour à la suite d’une publication asynchrone. |
| IsTrackingViewState |
Obtient une valeur qui indique si le contrôle serveur enregistre les modifications apportées à son état d’affichage. (Hérité de Control) |
| IsViewStateEnabled |
Obtient une valeur indiquant si l’état d’affichage est activé pour ce contrôle. (Hérité de Control) |
| LoadViewStateByID |
Obtient une valeur indiquant si le contrôle participe au chargement de son état d’affichage ID au lieu de l’index. (Hérité de Control) |
| NamingContainer |
Obtient une référence au conteneur d’affectation de noms du contrôle serveur, qui crée un espace de noms unique pour la différenciation entre les contrôles serveur avec la même ID valeur de propriété. (Hérité de Control) |
| Page |
Obtient une référence à l’instance Page qui contient le contrôle serveur. (Hérité de Control) |
| Parent |
Obtient une référence au contrôle parent du contrôle serveur dans la hiérarchie des contrôles de page. (Hérité de Control) |
| RenderingCompatibility |
Obtient une valeur qui spécifie la version ASP.NET avec laquelle le code HTML rendu est compatible. (Hérité de Control) |
| RenderMode |
Obtient ou définit une valeur qui indique si le contenu d’un UpdatePanel contrôle est placé entre un code HTML |
| RequiresUpdate |
Obtient une valeur qui indique si le contenu du UpdatePanel contrôle sera mis à jour. |
| Site |
Obtient des informations sur le conteneur qui héberge le contrôle actuel lors du rendu sur une surface de conception. (Hérité de Control) |
| SkinID |
Obtient ou définit la peau à appliquer au contrôle. (Hérité de Control) |
| TemplateControl |
Obtient ou définit une référence au modèle qui contient ce contrôle. (Hérité de Control) |
| TemplateSourceDirectory |
Obtient le répertoire virtuel du PageUserControl ou qui contient le contrôle serveur actuel. (Hérité de Control) |
| Triggers |
Obtient un UpdatePanelTriggerCollection objet qui contient AsyncPostBackTrigger et PostBackTrigger des objets qui ont été inscrits de manière déclarative pour le UpdatePanel contrôle. |
| UniqueID |
Obtient l’identificateur unique qualifié hiérarchiquement pour le contrôle serveur. (Hérité de Control) |
| UpdateMode |
Obtient ou définit une valeur qui indique quand le contenu d’un UpdatePanel contrôle est mis à jour. |
| ValidateRequestMode |
Obtient ou définit une valeur qui indique si le contrôle vérifie l’entrée du client à partir du navigateur pour obtenir des valeurs potentiellement dangereuses. (Hérité de Control) |
| ViewState |
Obtient un dictionnaire d’informations d’état qui vous permet d’enregistrer et de restaurer l’état d’affichage d’un contrôle serveur sur plusieurs requêtes pour la même page. (Hérité de Control) |
| ViewStateIgnoresCase |
Obtient une valeur qui indique si l’objet ne respecte pas la StateBag casse. (Hérité de Control) |
| ViewStateMode |
Obtient ou définit le mode d’état d’affichage de ce contrôle. (Hérité de Control) |
| Visible |
Obtient ou définit une valeur qui indique si un contrôle serveur est rendu en tant qu’interface utilisateur sur la page. (Hérité de Control) |
Méthodes
| Nom | Description |
|---|---|
| AddedControl(Control, Int32) |
Appelé après l’ajout d’un contrôle enfant à la Controls collection de l’objet Control . (Hérité de Control) |
| AddParsedSubObject(Object) |
Avertit le contrôle serveur qu’un élément, XML ou HTML, a été analysé et ajoute l’élément à l’objet du ControlCollection contrôle serveur. (Hérité de Control) |
| ApplyStyleSheetSkin(Page) |
Applique les propriétés de style définies dans la feuille de style de page au contrôle. (Hérité de Control) |
| BeginRenderTracing(TextWriter, Object) |
Commence le suivi au moment du design des données de rendu. (Hérité de Control) |
| BuildProfileTree(String, Boolean) |
Collecte des informations sur le contrôle serveur et le remet à la Trace propriété à afficher lorsque le suivi est activé pour la page. (Hérité de Control) |
| ClearCachedClientID() |
Définit la valeur mise en ClientID cache sur |
| ClearChildControlState() |
Supprime les informations d’état du contrôle pour les contrôles enfants du contrôle serveur. (Hérité de Control) |
| ClearChildState() |
Supprime les informations d’état d’affichage et d’état de contrôle pour tous les contrôles enfants du contrôle serveur. (Hérité de Control) |
| ClearChildViewState() |
Supprime les informations d’état d’affichage de tous les contrôles enfants du contrôle serveur. (Hérité de Control) |
| ClearEffectiveClientIDMode() |
Définit la ClientIDMode propriété de l’instance de contrôle actuelle et de tous les contrôles enfants sur Inherit. (Hérité de Control) |
| CreateChildControls() |
Appelé par l’infrastructure de page ASP.NET pour notifier les contrôles serveur qui utilisent l’implémentation basée sur la composition pour créer les contrôles enfants qu’ils contiennent en préparation de la publication ou du rendu. (Hérité de Control) |
| CreateContentTemplateContainer() |
Crée un Control objet qui agit en tant que conteneur pour les contrôles enfants qui définissent le UpdatePanel contenu du contrôle. |
| CreateControlCollection() |
Retourne la collection de tous les contrôles contenus dans le UpdatePanel contrôle. |
| DataBind() |
Lie une source de données au contrôle serveur appelé et à tous ses contrôles enfants. (Hérité de Control) |
| DataBind(Boolean) |
Lie une source de données au contrôle serveur appelé et à tous ses contrôles enfants avec une option pour déclencher l’événement DataBinding . (Hérité de Control) |
| DataBindChildren() |
Lie une source de données aux contrôles enfants du contrôle serveur. (Hérité de Control) |
| Dispose() |
Permet à un contrôle de serveur d’effectuer le nettoyage final avant de libérer de la mémoire. (Hérité de Control) |
| EndRenderTracing(TextWriter, Object) |
Met fin au suivi au moment du design des données de rendu. (Hérité de Control) |
| EnsureChildControls() |
Détermine si le contrôle serveur contient des contrôles enfants. Si ce n’est pas le cas, il crée des contrôles enfants. (Hérité de Control) |
| EnsureID() |
Crée un identificateur pour les contrôles qui n’ont pas d’identificateur affecté. (Hérité de Control) |
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| FindControl(String, Int32) |
Recherche dans le conteneur d’affectation de noms actuel un contrôle serveur avec l’entier spécifié |
| FindControl(String) |
Recherche le conteneur d’affectation de noms actuel pour un contrôle serveur avec le paramètre spécifié |
| Focus() |
Définit le focus d’entrée sur un contrôle. (Hérité de Control) |
| GetDesignModeState() |
Obtient les données au moment du design pour un contrôle. (Hérité de Control) |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetRouteUrl(Object) |
Obtient l’URL qui correspond à un ensemble de paramètres de routage. (Hérité de Control) |
| GetRouteUrl(RouteValueDictionary) |
Obtient l’URL qui correspond à un ensemble de paramètres de routage. (Hérité de Control) |
| GetRouteUrl(String, Object) |
Obtient l’URL qui correspond à un ensemble de paramètres d’itinéraire et à un nom d’itinéraire. (Hérité de Control) |
| GetRouteUrl(String, RouteValueDictionary) |
Obtient l’URL qui correspond à un ensemble de paramètres d’itinéraire et à un nom d’itinéraire. (Hérité de Control) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| GetUniqueIDRelativeTo(Control) |
Retourne la partie préfixée de la UniqueID propriété du contrôle spécifié. (Hérité de Control) |
| HasControls() |
Détermine si le contrôle serveur contient des contrôles enfants. (Hérité de Control) |
| HasEvents() |
Retourne une valeur indiquant si les événements sont inscrits pour le contrôle ou les contrôles enfants. (Hérité de Control) |
| Initialize() |
Initialise la collection de déclencheurs de contrôle si le UpdatePanel rendu de page partielle est activé. |
| IsLiteralContent() |
Détermine si le contrôle serveur contient uniquement du contenu littéral. (Hérité de Control) |
| LoadControlState(Object) |
Restaure les informations d’état du contrôle à partir d’une demande de page précédente qui a été enregistrée par la SaveControlState() méthode. (Hérité de Control) |
| LoadViewState(Object) |
Restaure les informations d’état d’affichage à partir d’une demande de page précédente enregistrée par la SaveViewState() méthode. (Hérité de Control) |
| MapPathSecure(String) |
Récupère le chemin d’accès physique auquel un chemin virtuel, absolu ou relatif, est mappé. (Hérité de Control) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| OnBubbleEvent(Object, EventArgs) |
Détermine si l’événement pour le contrôle serveur est transmis à la hiérarchie de contrôle du serveur d’interface utilisateur de la page. (Hérité de Control) |
| OnDataBinding(EventArgs) |
Déclenche l’événement DataBinding. (Hérité de Control) |
| OnInit(EventArgs) |
Déclenche l’événement Init. |
| OnLoad(EventArgs) |
Déclenche l’événement Load pour le UpdatePanel contrôle et appelle la méthode lorsque le Initialize() rendu de page partielle n’est pas activé. |
| OnPreRender(EventArgs) |
Déclenche l’événement PreRender. |
| OnUnload(EventArgs) |
Déclenche l’événement de base Unload . |
| OpenFile(String) |
Obtient un Stream élément utilisé pour lire un fichier. (Hérité de Control) |
| RaiseBubbleEvent(Object, EventArgs) |
Affecte toutes les sources de l’événement et ses informations au parent du contrôle. (Hérité de Control) |
| RemovedControl(Control) |
Appelé après la suppression d’un contrôle enfant de la Controls collection de l’objet Control . (Hérité de Control) |
| Render(HtmlTextWriter) |
Déclenche l’événement Render(HtmlTextWriter). |
| RenderChildren(HtmlTextWriter) |
Déclenche l’événement RenderChildren(HtmlTextWriter). |
| RenderControl(HtmlTextWriter, ControlAdapter) |
Génère le contenu du contrôle serveur sur un objet fourni HtmlTextWriter à l’aide d’un objet fourni ControlAdapter . (Hérité de Control) |
| RenderControl(HtmlTextWriter) |
Génère le contenu du contrôle serveur dans un objet fourni HtmlTextWriter et stocke les informations de suivi sur le contrôle si le suivi est activé. (Hérité de Control) |
| ResolveAdapter() |
Obtient l’adaptateur de contrôle responsable du rendu du contrôle spécifié. (Hérité de Control) |
| ResolveClientUrl(String) |
Obtient une URL qui peut être utilisée par le navigateur. (Hérité de Control) |
| ResolveUrl(String) |
Convertit une URL en une URL utilisable sur le client demandeur. (Hérité de Control) |
| SaveControlState() |
Enregistre les modifications d’état de contrôle du serveur qui se sont produites depuis la publication de la page sur le serveur. (Hérité de Control) |
| SaveViewState() |
Enregistre les modifications de l’état d’affichage du contrôle de serveur qui se sont produites depuis la publication de la page sur le serveur. (Hérité de Control) |
| SetDesignModeState(IDictionary) |
Définit les données au moment du design pour un contrôle. (Hérité de Control) |
| SetRenderMethodDelegate(RenderMethod) |
Affecte un délégué de gestionnaire d’événements pour restituer le contrôle serveur et son contenu dans son contrôle parent. (Hérité de Control) |
| SetTraceData(Object, Object, Object) |
Définit les données de trace pour le suivi au moment du design des données de rendu, à l’aide de l’objet suivi, de la clé de données de trace et de la valeur des données de trace. (Hérité de Control) |
| SetTraceData(Object, Object) |
Définit les données de trace pour le suivi au moment du design des données de rendu, à l’aide de la clé de données de trace et de la valeur des données de trace. (Hérité de Control) |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
| TrackViewState() |
Provoque le suivi des modifications d’état d’affichage apportées au contrôle serveur afin qu’ils puissent être stockés dans l’objet du StateBag contrôle serveur. Cet objet est accessible via la ViewState propriété. (Hérité de Control) |
| Update() |
Provoque une mise à jour du contenu d’un UpdatePanel contrôle. |
Événements
| Nom | Description |
|---|---|
| DataBinding |
Se produit lorsque le contrôle serveur se lie à une source de données. (Hérité de Control) |
| Disposed |
Se produit lorsqu’un contrôle serveur est libéré de la mémoire, qui est la dernière étape du cycle de vie du contrôle de serveur lorsqu’une page ASP.NET est demandée. (Hérité de Control) |
| Init |
Se produit lorsque le contrôle serveur est initialisé, qui est la première étape de son cycle de vie. (Hérité de Control) |
| Load |
Se produit lorsque le contrôle serveur est chargé dans l’objet Page . (Hérité de Control) |
| PreRender |
Se produit après le chargement de l’objet Control , mais avant le rendu. (Hérité de Control) |
| Unload |
Se produit lorsque le contrôle serveur est déchargé de la mémoire. (Hérité de Control) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| IAttributeAccessor.GetAttribute(String) |
Retourne un attribut d’un contrôle Web à l’aide d’un nom spécifié. |
| IAttributeAccessor.SetAttribute(String, String) |
Définit la valeur de l’attribut de contrôle spécifié. |
| IControlBuilderAccessor.ControlBuilder |
Pour obtenir une description de ce membre, consultez ControlBuilder. (Hérité de Control) |
| IControlDesignerAccessor.GetDesignModeState() |
Pour obtenir une description de ce membre, consultez GetDesignModeState(). (Hérité de Control) |
| IControlDesignerAccessor.SetDesignModeState(IDictionary) |
Pour obtenir une description de ce membre, consultez SetDesignModeState(IDictionary). (Hérité de Control) |
| IControlDesignerAccessor.SetOwnerControl(Control) |
Pour obtenir une description de ce membre, consultez SetOwnerControl(Control). (Hérité de Control) |
| IControlDesignerAccessor.UserData |
Pour obtenir une description de ce membre, consultez UserData. (Hérité de Control) |
| IDataBindingsAccessor.DataBindings |
Pour obtenir une description de ce membre, consultez DataBindings. (Hérité de Control) |
| IDataBindingsAccessor.HasDataBindings |
Pour obtenir une description de ce membre, consultez HasDataBindings. (Hérité de Control) |
| IExpressionsAccessor.Expressions |
Pour obtenir une description de ce membre, consultez Expressions. (Hérité de Control) |
| IExpressionsAccessor.HasExpressions |
Pour obtenir une description de ce membre, consultez HasExpressions. (Hérité de Control) |
| IParserAccessor.AddParsedSubObject(Object) |
Pour obtenir une description de ce membre, consultez AddParsedSubObject(Object). (Hérité de Control) |
Méthodes d’extension
| Nom | Description |
|---|---|
| FindDataSourceControl(Control) |
Retourne la source de données associée au contrôle de données pour le contrôle spécifié. |
| FindFieldTemplate(Control, String) |
Retourne le modèle de champ de la colonne spécifiée dans le conteneur d’affectation de noms du contrôle spécifié. |
| FindMetaTable(Control) |
Retourne l’objet métatable pour le contrôle de données contenant. |