动态创建表asp.net vb

时间:2017-03-23 09:36:13

标签: asp.net vb.net dynamic-tables

我可以使用

动态创建普通表

Dim tRow As New TableRow() tblKategorie.Rows.Add(tRow)Dim tCell As New TableCell() tRow.Cells.Add(tCell)

但现在我需要一个像这样的复杂表:enter image description here

如何动态创建此类表?如何合并单元格和列以获得此结果?我将非常感谢能够帮助我理解这个的例子或链接

1 个答案:

答案 0 :(得分:2)

您可以使用RowSpanColumnSpan

'create a new table with some properties
Dim table As Table = New Table
table.CellPadding = 5
table.CellSpacing = 0
table.Width = 500
table.Height = 200

'this is just to visualize the layout
table.Attributes.Add("border", "1")

'the first row that spans all 3 columns
Dim row1 As TableRow = New TableRow
Dim cell1a As TableCell = New TableCell
cell1a.ColumnSpan = 3
row1.Cells.Add(cell1a)

'the second row where the first column spans 3 rows
Dim row2 As TableRow = New TableRow
Dim cell2a As TableCell = New TableCell
cell2a.RowSpan = 3
Dim cell2b As TableCell = New TableCell
Dim cell2c As TableCell = New TableCell
row2.Cells.Add(cell2a)
row2.Cells.Add(cell2b)
row2.Cells.Add(cell2c)

'the third row where the second column spans 2 rows
Dim row3 As TableRow = New TableRow
Dim cell3b As TableCell = New TableCell
cell3b.RowSpan = 2
Dim cell3c As TableCell = New TableCell
row3.Cells.Add(cell3b)
row3.Cells.Add(cell3c)

'the last row containing just one cell
Dim row4 As TableRow = New TableRow
Dim cell4c As TableCell = New TableCell
row4.Cells.Add(cell4c)

'add the rows to the table
table.Rows.Add(row1)
table.Rows.Add(row2)
table.Rows.Add(row3)
table.Rows.Add(row4)

'add the table to the placeholder
PlaceHolder1.Controls.Add(table)