Table 类

在网页上显示表。

**命名空间:**System.Web.UI.WebControls
**程序集:**System.Web(在 system.web.dll 中)

语法

声明
Public Class Table
    Inherits WebControl
    Implements IPostBackEventHandler
用法
Dim instance As Table
public class Table : WebControl, IPostBackEventHandler
public ref class Table : public WebControl, IPostBackEventHandler
public class Table extends WebControl implements IPostBackEventHandler
public class Table extends WebControl implements IPostBackEventHandler

备注

Table 控件允许您生成 HTML 表并以直接方式指定其属性。可以用给定的静态内容在设计时生成表,但 Table Web 服务器控件的威力通常在用动态内容以编程方式生成表时才会体现出来。

值得注意的是,以编程方式对表行或单元格所做的任何添加或修改不在向服务器的发送间保持。这是因为表行和单元格本身就是控件,而不是 Table 控件的属性。要保持对表所做的任何更改,必须在每次回送后重新构造行和单元格。实际上,如果需要进行实质性的修改,建议使用 DataListDataGridGridView 控件,而不是 Table 控件。因此,该 Table 类主要由控件开发人员使用。

警告

此控件可用来显示用户输入,而该输入可能包含恶意的客户端脚本。在应用程序中显示从客户端发送来的任何信息之前,请检查它们是否包含可执行脚本、SQL 语句或其他代码。可以在将输入文本显示在控件中之前使用验证控件验证用户输入。ASP.NET 提供了输入请求验证功能,可以阻止用户输入中的脚本和 HTML 代码。有关更多信息,请参见 保证标准控件的安全如何:通过对字符串应用 HTML 编码在 Web 应用程序中防止脚本侵入在 ASP.NET 网页中验证用户输入

辅助功能

默认情况下为此控件呈现的标记可能不符合 Web 内容辅助功能准则 1.0 (WCAG) 中优先级为 1 的准则等辅助功能标准。有关此控件的辅助功能支持的详细信息,请参见 ASP.NET 控件和辅助功能

主题 位置
演练:到自定义业务对象的数据绑定 在 Visual Studio 中构建 ASP .NET Web 应用程序
如何:向 Web 窗体页添加 Table Web 服务器控件 (Visual Studio) 在 Visual Studio 中构建 ASP .NET Web 应用程序
如何:在 Visual Web Developer 中添加和移除 HTML 表元素 在 Visual Studio 中构建 ASP .NET Web 应用程序
演练:在 Visual Web Developer 中编辑 HTML 表格 在 Visual Studio 中构建 ASP .NET Web 应用程序
如何:在 Visual Web Developer 中调整 HTML 表元素的大小 在 Visual Studio 中构建 ASP .NET Web 应用程序
演练:在 Visual Web Developer 中创建和使用 ASP.NET 母版页 在 Visual Studio 中构建 ASP .NET Web 应用程序
演练:在 Visual Web Developer 中创建和使用 ASP.NET 母版页 使用 Visual Web Developer 生成应用程序
演练:在 Visual Web Developer 中编辑 HTML 表格 在 Visual Studio 中生成 ASP .NET Web 应用程序
如何:在 Visual Web Developer 中添加和移除 HTML 表元素 在 Visual Studio 中生成 ASP .NET Web 应用程序
如何:在 Visual Web Developer 中调整 HTML 表元素的大小 在 Visual Studio 中生成 ASP .NET Web 应用程序
如何:向 Table Web 服务器控件动态添加行和单元格 在 Visual Studio 中生成 ASP .NET Web 应用程序
演练:到自定义业务对象的数据绑定 在 Visual Studio 中生成 ASP .NET Web 应用程序
如何:向 Web 窗体页添加 Table Web 服务器控件 (Visual Studio) 在 Visual Studio 中生成 ASP .NET Web 应用程序
演练:在 Visual Web Developer 中编辑 HTML 表格 在 Visual Studio 中生成 ASP .NET Web 应用程序
如何:在 Visual Web Developer 中添加和移除 HTML 表元素 在 Visual Studio 中生成 ASP .NET Web 应用程序
如何:在 Visual Web Developer 中调整 HTML 表元素的大小 在 Visual Studio 中生成 ASP .NET Web 应用程序
如何:向 Table Web 服务器控件动态添加行和单元格 在 Visual Studio 中生成 ASP .NET Web 应用程序
演练:到自定义业务对象的数据绑定 在 Visual Studio 中生成 ASP .NET Web 应用程序
如何:向 Web 窗体页添加 Table Web 服务器控件 (Visual Studio) 在 Visual Studio 中生成 ASP .NET Web 应用程序
如何:向 Web 窗体页添加 Table Web 服务器控件 生成 ASP .NET Web 应用程序
如何:向 Table Web 服务器控件动态添加行和单元格 生成 ASP .NET Web 应用程序

示例

下面的代码示例演示如何在设计时创建表。该表包含两行,每行两个单元格。

提示

下面的代码示例使用单文件代码模型,当它直接复制到代码隐藏文件时可能不能正常工作。此代码示例必须被复制到具有 .aspx 扩展名的空文本文件中。有关 Web 窗体代码模型的更多信息,请参见 ASP.NET 网页代码模型

<%@ Page Language="VB" AutoEventWireup="True" %>
 <html><body>
     <h3>Table example, constructed at design time</h3>
 <form runat=server>
 <asp:Table id="Table1" runat="server"
    CellPadding=10 
    GridLines="Both"
    HorizontalAlign="Center">
    <asp:TableRow>
       <asp:TableCell>
          Row 0, Col 0
       </asp:TableCell>
       <asp:TableCell>
          Row 0, Col 1
       </asp:TableCell>
    </asp:TableRow>
    <asp:TableRow>
       <asp:TableCell>
          Row 1, Col 0
       </asp:TableCell>
       <asp:TableCell>
          Row 1, Col 1
       </asp:TableCell>
    </asp:TableRow>
 </asp:Table>
 </form>
 </body></html>
<%@ Page Language="C#" AutoEventWireup="True" %>
 <html><body>
     <h3>Table example, constructed at design time</h3>
 <form runat=server>
 <asp:Table id="Table1" runat="server"
    CellPadding=10 
    GridLines="Both"
    HorizontalAlign="Center">
    <asp:TableRow>
       <asp:TableCell>
          Row 0, Col 0
       </asp:TableCell>
       <asp:TableCell>
          Row 0, Col 1
       </asp:TableCell>
    </asp:TableRow>
    <asp:TableRow>
       <asp:TableCell>
          Row 1, Col 0
       </asp:TableCell>
       <asp:TableCell>
          Row 1, Col 1
       </asp:TableCell>
    </asp:TableRow>
 </asp:Table>
 </form>
 </body></html>

下面的代码示例演示如何以编程方式构造表。动态地创建一个表包含三个步骤。首先,创建 TableCell 对象,表示行中的单元格。添加单元格的内容有两种方法:设置 Text 属性,或者向 TableCellControl.Controls 集合添加控件。接下来,创建 TableRow 以表示表中的行。将此前创建的 TableCell 对象添加到 TableRowCells 集合中。最后,将 TableRow 添加到 Table 控件的 Rows 集合中。对表中的各行重复此过程。

<%@ Page Language="VB" AutoEventWireup="True" %>

 <html>
 <head>
     <script language="VB" runat="server">
    Sub Page_Load(sender As Object, e As EventArgs)
        ' Generate rows and cells.           
        Dim numrows As Integer = 3
        Dim numcells As Integer = 2
        Dim j As Integer
        For j = 0 To numrows - 1
            Dim r As New TableRow()
            Dim i As Integer
            For i = 0 To numcells - 1
                Dim c As New TableCell()
                c.Controls.Add(New LiteralControl("row " & j.ToString() & ", cell " & i.ToString()))
                r.Cells.Add(c)
            Next i
            Table1.Rows.Add(r)
        Next j
    End Sub 'Page_Load
   </script>
 </head>
 <body>
     <h3>Table Example, constructed programmatically</h3>
     <form runat=server>
         <asp:Table id="Table1" 
          GridLines="Both" 
          HorizontalAlign="Center" 
          Font-Name="Verdana" 
          Font-Size="8pt" 
          CellPadding=15 
          CellSpacing=0 
          Runat="server"/>
     </form>
 </body>
 </html>
<%@ Page Language="C#" AutoEventWireup="True" %>

 <html>
 <head>
     <script language="C#" runat="server">
         void Page_Load(Object sender, EventArgs e) {
             // Generate rows and cells.           
             int numrows = 3;
             int numcells = 2;
             for (int j=0; j<numrows; j++) {          
                 TableRow r = new TableRow();
                 for (int i=0; i<numcells; i++) {
                     TableCell c = new TableCell();
                     c.Controls.Add(new LiteralControl("row " + j.ToString() + ", cell " + i.ToString()));
                     r.Cells.Add(c);
                 }
                 Table1.Rows.Add(r);
             }
         }
     </script>
 </head>
 <body>
     <h3>Table Example, constructed programmatically</h3>
     <form runat=server>
         <asp:Table id="Table1" 
          GridLines="Both" 
          HorizontalAlign="Center" 
          Font-Name="Verdana" 
          Font-Size="8pt" 
          CellPadding=15 
          CellSpacing=0 
          Runat="server"/>
     </form>
 </body>
 </html>

.NET Framework 安全性

继承层次结构

System.Object
   System.Web.UI.Control
     System.Web.UI.WebControls.WebControl
      System.Web.UI.WebControls.Table

线程安全

此类型的任何公共静态(Visual Basic 中的 Shared)成员都是线程安全的,但不保证所有实例成员都是线程安全的。

平台

Windows 98、Windows 2000 SP4、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

请参见

参考

Table 成员
System.Web.UI.WebControls 命名空间
TableCell
TableRow
TableHeaderRow
TableFooterRow
TableCellCollection
TableRowCollection
DataGrid 类
DataList 类

其他资源

Table、TableRow 和 TableCell Web 服务器控件
保证标准控件的安全