UpdatePanelUpdateMode Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt den möglichen Aktualisierungsmodus in einem UpdatePanel-Steuerelement dar.
public enum class UpdatePanelUpdateMode
public enum UpdatePanelUpdateMode
type UpdatePanelUpdateMode =
Public Enum UpdatePanelUpdateMode
- Vererbung
Felder
Always | 0 | Der Inhalt des UpdatePanel-Steuerelements wird für alle Postbacks aktualisiert, die aus der Seite stammen. Dazu gehören asynchrone Postbacks. |
Conditional | 1 | Gibt eine Reihe von Bedingungen an, unter denen der Inhalt des UpdatePanel Steuerelements aktualisiert wird. Weitere Informationen finden Sie im Abschnitt Hinweise. |
Beispiele
Im folgenden Beispiel werden zwei UpdatePanel Steuerelemente deklariert. Im ersten Bereich wird die UpdatePanel.UpdateMode -Eigenschaft auf Conditional
festgelegt. Der zweite Bereich ist UpdatePanel.UpdateMode standardmäßig auf Always
festgelegt. Eine Schaltfläche außerhalb beider Bereiche wird mithilfe der ScriptManager.RegisterAsyncPostBackControl -Methode als asynchrones Postback-Steuerelement registriert. Im Klickereignishandler der Schaltfläche wird die UpdatePanel.Update Methode des ersten Bereichs aufgerufen, wenn seit der letzten Aktualisierung mehr als fünf Sekunden vergangen sind. In diesem Szenario wird der Inhalt des Bereichs nur aktualisiert, wenn das letzte Panelupdate mehr als fünf Sekunden zurückliegt. Der Inhalt des zweiten Bereichs wird immer aktualisiert.
<%@ 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 DateTime LastUpdate
{
get
{
return (DateTime)(ViewState["LastUpdate"] ?? DateTime.Now);
}
set
{
ViewState["LastUpdate"] = value;
}
}
protected void Button1_Click(object sender, EventArgs e)
{
if (LastUpdate.AddSeconds(5.0) < DateTime.Now)
{
UpdatePanel1.Update();
LastUpdate = DateTime.Now;
}
}
protected void Page_Load(object sender, EventArgs e)
{
ScriptManager1.RegisterAsyncPostBackControl(Button1);
if (!IsPostBack)
{
LastUpdate = DateTime.Now;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>UpdatePanelUpdateMode Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1"
runat="server" />
<asp:Panel ID="Panel1"
GroupingText="UpdatePanel1"
runat="server">
<asp:UpdatePanel ID="UpdatePanel1"
UpdateMode="Conditional"
runat="server">
<ContentTemplate>
<p>
The content in this UpdatePanel only refreshes if five or more
seconds have passed since the last refresh and the button in
UpdatePanel2 was clicked. The time is checked
server-side and the UpdatePanel.Update() method is called. Last
updated: <strong>
<%= LastUpdate.ToString() %>
</strong>
</p>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Panel>
<asp:Panel ID="Panel2"
GroupingText="UpdatePanel2"
runat="server">
<asp:UpdatePanel ID="UpdatePanel2"
runat="server">
<ContentTemplate>
<p>
This UpdatePanel always refreshes if the button is clicked.
Last updated: <strong>
<%= DateTime.Now.ToString() %>
</strong>
</p>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Panel>
<asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click" />
</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 Property LastUpdate() As DateTime
Get
If ViewState("LastUpdate") IsNot Nothing Then
Return ViewState("LastUpdate")
Else : Return DateTime.Now()
End If
End Get
Set(ByVal Value As DateTime)
ViewState("LastUpdate") = Value
End Set
End Property
Protected Sub Button1_Click(ByVal Sender As Object, ByVal E As EventArgs)
If (LastUpdate.AddSeconds(5.0) < DateTime.Now) Then
UpdatePanel1.Update()
LastUpdate = DateTime.Now
End If
End Sub
Protected Sub Page_Load(ByVal Sender As Object, ByVal E As EventArgs)
ScriptManager1.RegisterAsyncPostBackControl(Button1)
If Not IsPostBack Then
LastUpdate = DateTime.Now
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>UpdatePanelUpdateMode Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1"
runat="server" />
<asp:Panel ID="Panel1"
GroupingText="UpdatePanel1"
runat="server">
<asp:UpdatePanel ID="UpdatePanel1"
runat="server"
UpdateMode="Conditional">
<ContentTemplate>
<p>
The content in this UpdatePanel only refreshes if five or more
seconds have passed since the last refresh and the button in
UpdatePanel2 was clicked. The time is checked
server-side and the UpdatePanel.Update() method is called. Last
updated: <strong>
<%= LastUpdate.ToString() %>
</strong>
</p>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Panel>
<asp:Panel ID="Panel2"
GroupingText="UpdatePanel2"
runat="server">
<asp:UpdatePanel ID="UpdatePanel2"
runat="server">
<ContentTemplate>
<p>
This UpdatePanel always refreshes if the button is clicked.
Last updated: <strong>
<%= DateTime.Now.ToString() %>
</strong>
</p>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Panel>
<asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click" />
</div>
</form>
</body>
</html>
Hinweise
Die UpdatePanelUpdateMode
Enumeration wird von der UpdatePanel.UpdateMode -Eigenschaft verwendet und definiert die möglichen Aktualisierungsmodi für den Inhalt eines Steuerelements UpdatePanel . Für UpdatePanel das Steuerelement muss true
die ScriptManager.EnablePartialRendering -Eigenschaft für das Partielle Seitenrendering erfolgen.
Der Standardwert der UpdatePanel.UpdateMode -Eigenschaft ist Always
.
Wenn sich das UpdatePanel Steuerelement in einem anderen UpdatePanel Steuerelement befindet und der übergeordnete Bereich aktualisiert wird, wird auch der geschachtelte Bereich unabhängig vom UpdateMode Eigenschaftswert aktualisiert.
Der Conditional
Wert aktualisiert den Inhalt des UpdatePanel Steuerelements unter den folgenden Bedingungen:
Die UpdatePanel.Update -Methode wird explizit aufgerufen.
Ein Steuerelement wird mithilfe der UpdatePanel.Triggers -Eigenschaft als Trigger definiert und verursacht ein Postback. In diesem Szenario ist das Steuerelement ein expliziter Trigger zum Aktualisieren des Bereichsinhalts. Das Triggersteuerelement kann sich innerhalb oder außerhalb des UpdatePanel Steuerelements befinden, das den Trigger definiert.
Die UpdatePanel.ChildrenAsTriggers -Eigenschaft ist auf
true
festgelegt, und ein untergeordnetes Steuerelement des UpdatePanel Steuerelements bewirkt ein Postback. In diesem Szenario sind untergeordnete Steuerelemente des UpdatePanel Steuerelements implizite Trigger für die Aktualisierung des Bereichs. Untergeordnete Steuerelemente geschachtelter UpdatePanel Steuerelemente führen nicht dazu, dass das äußere UpdatePanel Steuerelement aktualisiert wird, es sei denn, sie sind explizit als Trigger definiert.
Gilt für:
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Tickets als Feedbackmechanismus für Inhalte auslaufen lassen und es durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unter:Einreichen und Feedback anzeigen für