Декларативный синтаксис серверного элемента управления HtmlTable
Создает серверный элемент управления, сопоставляемый HTML-элементу управления <table>, и позволяет создать таблицу.
<table
EnableViewState="False|True"
Id="string"
Visible="False|True"
OnDataBinding="OnDataBinding event handler"
OnDisposed="OnDisposed event handler"
OnInit="OnInit event handler"
OnLoad="OnLoad event handler"
OnPreRender="OnPreRender event handler"
OnUnload="OnUnload event handler"
runat="server"
>
<tr>
<td></td>
</tr>
</table>
Заметки
Элемент управления HtmlTable используется для программирования элемента HTML <table>. Элемент управления HtmlTable состоит из строк (представленных объектами HtmlTableRow
), которые хранятся в коллекции Rows таблицы. Каждая строка состоит из ячеек (представленных объектами HtmlTableCell), которые хранятся в коллекции Cells строки.
Для создания таблицы сначала объявите в форме на странице элемент управления HtmlTable. Затем разместите объекты HtmlTableRow внутри открывающего и закрывающего тегов элемента управления HtmlTable — по одному для каждой строки таблицы. После определения строк таблицы создайте в строках ячейки. Для этого объявите объекты HtmlTableCellмежду открывающим и закрывающим тегами каждого из объектов HtmlTableRow.
![]() |
---|
Убедитесь, что в каждой строке и столбце таблицы содержится правильное количество ячеек, иначе таблица будет выведена неверно.В общем случае все строки должны иметь одинаковое число ячеек.Аналогичным образом, каждый столбец должен иметь одно и то же число ячеек.При объединении ячеек все строки должны иметь одинаковую ширину, а все столбцы — одинаковую высоту. |
С помощью элемента управления HtmlTable можно настроить изображение таблицы. С помощью свойств BgColor, Border, BorderColor, Height и Width можно задать соответственно цвет фона, ширину и цвет рамки, высоту и ширину таблицы. Кроме того, можно задавать промежуток как между ячейками, так и между содержимым и границей ячейки, задавая свойства CellSpacing и CellPadding.
Пример
В следующем примере создаются строки и ячейки таблицы на основании данных, выбранных пользователем из двух элементов управления HtmlSelect. При каждой загрузке страницы в коде выполняется проверка значений, выбранных пользователем в элементах управления HtmlSelect. На основе этих значений динамически формируется число строк и столбцов элемента управления HtmlTable. Для создания таблицы создайте ее строки (представляемые объектами HtmlTableRow) и добавьте их в коллекцию Rows элемента управления HtmlTable. Для создания строки создайте ее ячейки (представляемые объектами HtmlTableCell) и добавьте их в коллекцию Cells элемента управления HtmlTableRow.
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub Page_Load(sender As Object, e As EventArgs)
Dim row As Integer = 0
' Generate rows and cells.
Dim numrows As Integer = Convert.ToInt32(Select1.Value)
Dim numcells As Integer = Convert.ToInt32(Select2.Value)
Dim j As Integer
For j = 0 To numrows - 1
Dim r As New HtmlTableRow()
' Set bgcolor on alternating rows.
If row Mod 2 = 1 Then
r.BgColor = "Gainsboro"
End If
row += 1
Dim i As Integer
For i = 0 To numcells - 1
Dim c As New HtmlTableCell()
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
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlTable Control</title>
</head>
<body>
<form id="Form1" runat="server">
<div>
<h3>HtmlTable Example</h3>
<br />
<table id="Table1" cellspacing="0" runat="server"
style="border-width:1; border-color: Black; padding: 5"
/>
<br />
Table rows:
<select id="Select1" runat="server">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<br />
Table cells:
<select id="Select2" runat="server">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<input id="Submit1" type="submit"
value="Generate Table" runat="server" />
</div>
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
int row = 0;
// Generate rows and cells.
int numrows = Convert.ToInt32(Select1.Value);
int numcells = Convert.ToInt32(Select2.Value);
for (int j = 0; j < numrows; j++)
{
HtmlTableRow r = new HtmlTableRow();
// Set bgcolor on alternating rows.
if (row%2 == 1)
r.BgColor="Gainsboro";
row++;
for (int i = 0; i < numcells; i++)
{
HtmlTableCell c = new HtmlTableCell();
c.Controls.Add(new LiteralControl("row " + j.ToString() +
", cell " + i.ToString()));
r.Cells.Add(c);
}
Table1.Rows.Add(r);
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>HtmlTable Control</title>
</head>
<body>
<form id="Form1" runat="server">
<div>
<h3>HtmlTable Example</h3>
<table id="Table1"
style="border-width:1; border-color:Black; padding:5"
cellspacing="0" runat="server" />
<br />
Table rows:
<select id="Select1" runat="server">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<br />
Table cells:
<select id="Select2" runat="server">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<input id="Submit1" type="submit"
value="Generate Table" runat="server" />
</div>
</form>
</body>
</html>
См. также
Ссылки
Декларативный синтаксис серверного веб-элемента управления HtmlTableCell
Декларативный синтаксис серверного элемента управления HtmlTableRow
Декларативный синтаксис серверного элемента управления HtmlForm