UpdatePanel 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在不回发的情况下允许部分呈现页的各部分。
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
- 继承
- 属性
- 实现
示例
以下示例演示 控件 UpdatePanel 的各种用法。
UpdatePanel 控件中的控件
以下示例演示如何在发布到服务器时将控件放入控件中 UpdatePanel ,以减少屏幕闪烁。 在此示例中, Calendar 和 DropDownList 控件位于 控件 UpdatePanel 内。 默认情况下, UpdateMode 属性为 Always , ChildrenAsTriggers 属性为 true
。 因此,面板的子控件会导致异步回发。
<%@ 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>
具有 UpdatePanel 控件的母版/详细信息方案
在以下示例中, UpdatePanel 控件用于显示 Northwind 数据库中的订单和订单详细信息的主/详细信息方案中。 一个 UpdatePanel 控件包含 GridView 显示订单列表的控件。 第二 UpdatePanel 个控件包含一个 DetailsView 控件,该控件显示一个订单的详细信息。 从第一个表中选择订单时,该订单的详细信息将显示在第二个表中。 第二个表基于第一个表中的选择进行异步更新。 订单摘要表中的排序和分页操作也会导致部分更新。
<%@ 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>
如果将控件 GridView 置于控件 UpdatePanel 内,则不支持将该 GridView 控件的 EnableSortingAndPagingCallbacks 属性设置为 true
。 但是,由于UpdatePanel控件支持异步回发,因此更改控件内UpdatePanel控件的任何回发GridView都会导致与排序和分页回调相同的行为。
在模板中使用 UpdatePanel 控件
在以下示例中, UpdatePanel 控件在控件的 GridView 项模板中使用。 UpdatePanel 每个数据行中的控件都是自动生成的。 每一行的 UpdatePanel 控件都包含一个 Label 控件,用于显示该行中项的数量,以及一个 Button 用于减少和增加数量的控件。
<%@ 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>
注解
本主题内容:
介绍
UpdatePanel 控件是 ASP.NET 中 AJAX 功能的核心部分。 它们与 控件一起使用, ScriptManager 以启用部分页面呈现。 当仅需要更新页面的一部分时,部分页面呈现可减少同步回发和完成页面更新的需求。 部分页面呈现可改善用户体验,因为它减少了整页回发期间发生的屏幕闪烁,并改进了网页的交互性。
刷新 UpdatePanel 内容
启用分页呈现后,控件可以执行更新整个页面的回发,或者执行异步回发来更新一个或多个 UpdatePanel 控件的内容。 控件是否导致异步回发并更新控件 UpdatePanel 取决于以下内容:
UpdateMode如果 控件的 UpdatePanel 属性设置为 Always,则UpdatePanel控件的内容将在每次从页面发起的回发时更新。 这包括来自其他 UpdatePanel 控件内的控件的异步回发,以及来自不在控件内的控件的 UpdatePanel 回发。
如果 属性 UpdateMode 设置为 Conditional,则会 UpdatePanel 在以下情况下更新控件的内容:
显式调用 Update 控件的 UpdatePanel 方法时。
当控件 UpdatePanel 嵌套在另一个 UpdatePanel 控件中,并且更新父面板时。
当回发是由使用
Triggers
控件的 属性定义为触发器的 UpdatePanel 控件引起的。 在此方案中,控件显式触发面板内容的更新。 控件可以位于与触发器关联的控件内部或外部 UpdatePanel 。当 属性 ChildrenAsTriggers 设置为
true
并且 控件的 UpdatePanel 子控件导致回发时。 嵌套 UpdatePanel 控件的子控件不会导致外部 UpdatePanel 控件的更新,除非它们被显式定义为触发器。
不允许将 ChildrenAsTriggers 属性设置为 false
和 UpdateMode 将 属性设置为 Always 的组合,并且会引发异常。
控件 UpdatePanel 执行异步发布时,会添加自定义 HTTP 标头。 某些代理会删除此自定义 HTTP 标头。 如果发生这种情况,服务器会将请求作为常规回发进行处理,这会导致客户端错误。 若要解决此问题,请在执行异步帖子时插入自定义窗体字段。 然后检查服务器代码中的标头或自定义窗体字段。
UpdatePanel 使用情况
可以使用多个 UpdatePanel 控件单独更新多个页面区域。 首次呈现包含一个或多个 UpdatePanel 控件的页面时,将呈现所有 UpdatePanel 控件的所有内容并将其发送到浏览器。 在后续的异步回发中,每个 UpdatePanel 控件的内容可能不会更新,具体取决于面板设置以及单个面板的客户端或服务器逻辑。
还可以将 UpdatePanel 控件用于以下各项:
在用户控件中。
在母版和内容页上。
嵌套在其他 UpdatePanel 控件中。
UpdatePanel 可以通过声明方式或编程方式添加控件。
可以通过编程方式添加 UpdatePanel 控件,但不能以编程方式添加触发器。 若要创建类似触发器的行为,可以在页面上将控件注册为异步回发控件。 通过调用 RegisterAsyncPostBackControl 控件的 ScriptManager 方法执行此操作。 然后,可以创建运行以响应异步回发的事件处理程序,并在 处理程序中调用 Update 控件的 UpdatePanel 方法。
应用样式
控件 UpdatePanel 接受 expando 属性。 这使你可以为控件呈现的 HTML 元素设置 CSS 类。 例如,可以创建以下示例中所示的标记:
<asp:UpdatePanel runat="server" class="myStyle">
</asp:UpdatePanel>
上一示例中的标记在页面运行时呈现类似于以下内容的 HTML:
<div id="ctl00_MainContent_UpdatePanel1" class="MyStyle">
</div>
声明性语法
<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>
构造函数
UpdatePanel() |
初始化 UpdatePanel 类的新实例。 |
属性
Adapter |
获取控件的浏览器特定适配器。 (继承自 Control) |
AppRelativeTemplateSourceDirectory |
获取或设置包含该控件的 Page 或 UserControl 对象的应用程序相对虚拟目录。 (继承自 Control) |
Attributes |
获取 UpdatePanel 控件的级联样式表 (CSS) 特性集合。 |
BindingContainer |
获取包含该控件的数据绑定的控件。 (继承自 Control) |
ChildControlsCreated |
获取一个值,该值指示是否已创建服务器控件的子控件。 (继承自 Control) |
ChildrenAsTriggers |
获取或设置一个值,该值指示来自 UpdatePanel 控件的即时子控件的回发是否更新面板的内容。 |
ClientID |
获取由 ASP.NET 生成的 HTML 标记的控件 ID。 (继承自 Control) |
ClientIDMode |
获取或设置用于生成 ClientID 属性值的算法。 (继承自 Control) |
ClientIDSeparator |
获取一个字符值,该值表示 ClientID 属性中使用的分隔符字符。 (继承自 Control) |
ContentTemplate |
获取或设置用于定义 UpdatePanel 控件内容的模板。 |
ContentTemplateContainer |
获取一个可以以编程方式向其添加子控件的控件对象。 |
Context |
为当前 Web 请求获取与服务器控件关联的 HttpContext 对象。 (继承自 Control) |
Controls |
获取包含 ControlCollection 控件的子控件的 UpdatePanel 对象。 |
DataItemContainer |
如果命名容器实现 IDataItemContainer,则获取对命名容器的引用。 (继承自 Control) |
DataKeysContainer |
如果命名容器实现 IDataKeysControl,则获取对命名容器的引用。 (继承自 Control) |
DesignMode |
获取一个值,该值指示是否正在使用设计图面上的一个控件。 (继承自 Control) |
EnableTheming |
获取或设置一个值,该值指示主题是否应用于该控件。 (继承自 Control) |
EnableViewState |
获取或设置一个值,该值指示服务器控件是否向发出请求的客户端保持自己的视图状态以及它所包含的任何子控件的视图状态。 (继承自 Control) |
Events |
获取控件的事件处理程序委托列表。 此属性为只读。 (继承自 Control) |
HasChildViewState |
获取一个值,该值指示当前服务器控件的子控件是否具有任何已保存的视图状态设置。 (继承自 Control) |
ID |
获取或设置分配给服务器控件的编程标识符。 (继承自 Control) |
IdSeparator |
获取用于分隔控件标识符的字符。 (继承自 Control) |
IsChildControlStateCleared |
获取一个值,该值指示该控件中包含的控件是否具有控件状态。 (继承自 Control) |
IsInPartialRendering |
获取一个值,该值指示是否因异步回发而更新 UpdatePanel 控件。 |
IsTrackingViewState |
获取一个值,用于指示服务器控件是否会将更改保存到其视图状态中。 (继承自 Control) |
IsViewStateEnabled |
获取一个值,该值指示是否为该控件启用了视图状态。 (继承自 Control) |
LoadViewStateByID |
获取一个值,该值指示控件是否通过 ID 而不是索引参与加载其视图状态。 (继承自 Control) |
NamingContainer |
获取对服务器控件的命名容器的引用,此引用创建唯一的命名空间,以区分具有相同 ID 属性值的服务器控件。 (继承自 Control) |
Page |
获取对包含服务器控件的 Page 实例的引用。 (继承自 Control) |
Parent |
获取对页 UI 层次结构中服务器控件的父控件的引用。 (继承自 Control) |
RenderingCompatibility |
获取一个值,该值指定呈现的 HTML 将与之兼容的 ASP.NET 版本。 (继承自 Control) |
RenderMode |
获取或设置一个值,该值指示 UpdatePanel 控件的内容是否包含在 HTML |
RequiresUpdate |
获取一个值,该值指示是否更新 UpdatePanel 控件的内容。 |
Site |
获取容器信息,该容器在呈现于设计图面上时承载当前控件。 (继承自 Control) |
SkinID |
获取或设置要应用于控件的外观。 (继承自 Control) |
TemplateControl |
获取或设置对包含该控件的模板的引用。 (继承自 Control) |
TemplateSourceDirectory |
获取包含当前服务器控件的 Page 或 UserControl 的虚拟目录。 (继承自 Control) |
Triggers |
获取一个 UpdatePanelTriggerCollection 对象,该对象包含以声明方式为 AsyncPostBackTrigger 控件注册的 PostBackTrigger 和 UpdatePanel 对象。 |
UniqueID |
获取服务器控件的唯一的、以分层形式限定的标识符。 (继承自 Control) |
UpdateMode |
获取或设置一个值,该值指示何时更新 UpdatePanel 控件的内容。 |
ValidateRequestMode |
获取或设置指示控件是否检查来自浏览器的客户端输入是否具有潜在危险值的值。 (继承自 Control) |
ViewState |
获取状态信息的字典,这些信息使您可以在同一页的多个请求间保存和还原服务器控件的视图状态。 (继承自 Control) |
ViewStateIgnoresCase |
获取一个值,该值指示 StateBag 对象是否不区分大小写。 (继承自 Control) |
ViewStateMode |
获取或设置此控件的视图状态模式。 (继承自 Control) |
Visible |
获取或设置一个值,该值指示服务器控件是否作为 UI 呈现在页上。 (继承自 Control) |
方法
事件
DataBinding |
当服务器控件绑定到数据源时发生。 (继承自 Control) |
Disposed |
当从内存释放服务器控件时发生,这是请求 ASP.NET 页时服务器控件生存期的最后阶段。 (继承自 Control) |
Init |
当服务器控件初始化时发生;初始化是控件生存期的第一步。 (继承自 Control) |
Load |
当服务器控件加载到 Page 对象中时发生。 (继承自 Control) |
PreRender |
在加载 Control 对象之后、呈现之前发生。 (继承自 Control) |
Unload |
当服务器控件从内存中卸载时发生。 (继承自 Control) |
显式接口实现
IAttributeAccessor.GetAttribute(String) |
通过使用指定名称返回 Web 控件的特性。 |
IAttributeAccessor.SetAttribute(String, String) |
设置指定的控件特性的值。 |
IControlBuilderAccessor.ControlBuilder |
有关此成员的说明,请参见 ControlBuilder。 (继承自 Control) |
IControlDesignerAccessor.GetDesignModeState() |
有关此成员的说明,请参见 GetDesignModeState()。 (继承自 Control) |
IControlDesignerAccessor.SetDesignModeState(IDictionary) |
有关此成员的说明,请参见 SetDesignModeState(IDictionary)。 (继承自 Control) |
IControlDesignerAccessor.SetOwnerControl(Control) |
有关此成员的说明,请参见 SetOwnerControl(Control)。 (继承自 Control) |
IControlDesignerAccessor.UserData |
有关此成员的说明,请参见 UserData。 (继承自 Control) |
IDataBindingsAccessor.DataBindings |
有关此成员的说明,请参见 DataBindings。 (继承自 Control) |
IDataBindingsAccessor.HasDataBindings |
有关此成员的说明,请参见 HasDataBindings。 (继承自 Control) |
IExpressionsAccessor.Expressions |
有关此成员的说明,请参见 Expressions。 (继承自 Control) |
IExpressionsAccessor.HasExpressions |
有关此成员的说明,请参见 HasExpressions。 (继承自 Control) |
IParserAccessor.AddParsedSubObject(Object) |
有关此成员的说明,请参见 AddParsedSubObject(Object)。 (继承自 Control) |
扩展方法
FindDataSourceControl(Control) |
返回与指定控件的数据控件关联的数据源。 |
FindFieldTemplate(Control, String) |
返回指定控件的命名容器中指定列的字段模板。 |
FindMetaTable(Control) |
返回包含数据控件的元表对象。 |