1

我不知道为什么这不起作用。我正在尝试从后端代码创建一个表头部分,但一切都进入了 tbody。

        Dim output As New Web.UI.WebControls.Table

        'Create the header row
        Dim hRow As New Web.UI.WebControls.TableHeaderRow
        hRow.TableSection = Web.UI.WebControls.TableRowSection.TableHeader
        hRow.Controls.Add(New Web.UI.WebControls.TableHeaderCell)

        For Each d As GridDate In Dates
            Dim hCell As New Web.UI.WebControls.TableHeaderCell
            hCell.Text = d.Value
            hRow.Controls.Add(hCell)
        Next
        output.Controls.Add(hRow)

结果是 tbody 下的所有内容,尽管创建了标题行并将 section 属性设置为标题。我究竟做错了什么?

在此处输入图像描述

4

2 回答 2

0

我发布的代码中有错误。在我的代码的最后一行中,我将新行附加到控件集合中:

output.Controls.Add(hRow)

不要这样做。它似乎在最终渲染中绕过了 ASP.NET TableRows 独有的一些属性。在这种情况下,尽管设置正确,但它忽略了 TableSection 属性。您应该改为将行附加到 Rows 集合:

output.Rows.Add(hRow)
于 2013-11-08T18:28:44.013 回答
0

尝试这个

Dim output As New Table
Dim hRow As New TableHeaderRow
For Each d As GridDate In Dates
    Dim hCell As New TableHeaderCell
    hCell.Text = d.Value
    hCell.Scope = TableHeaderScope.Column
    hRow.Cells.Add(hCell)
Next
output.Rows.Add(hRow)

这对我有用

于 2016-07-31T12:05:56.513 回答