【问题标题】:How to add a table row to thead section of a gridview?如何将表格行添加到gridview的标题部分?
【发布时间】:2014-02-04 14:23:10
【问题描述】:

在您的网格视图中创建一个主题部分

  Protected Overrides Sub OnPreRenderComplete(ByVal e As EventArgs)
    If (gv.Rows.Count > 0) Then
      gv.HeaderRow.TableSection = TableRowSection.TableHeader
    End If
  End Sub

在您的网格视图中插入一行内容

  Protected Sub gv_OnDataBound(sender As Object, e As EventArgs) Handles gv.DataBound
    Dim row As New GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Normal)
    For i As Integer = 0 To gv.Columns.Count - 1
      Dim cell As New TableHeaderCell()
      Dim txtBx As New TextBox()
      cell.Controls.Add(txtBx)
      row.Controls.Add(cell)
    Next
    gv.HeaderRow.Parent.Controls.AddAt(1, row)
  End Sub
End Class

这将在第 1 行的每个单元格 <th> 中插入一个带有文本框的行。


问题

如何在 gridview 的thead 部分插入一行(如上例)?

在 aspx 页面或 VB 中执行此操作即可。

【问题讨论】:

  • 什么不起作用?它...看起来您正在创建一个广告部分,并添加一行。
  • 上面的代码在'tbody'部分而不是thead中创建了一个单元格。虽然我现在找到了一个解决方案,但我会添加。感谢您的回复。
  • 啊,有道理。呵呵,我以前从未尝试过这样做。我会考虑如何在 VB 代码中做到这一点,看看是否有任何想法。不过,使用标记的解决方案很好。
  • @jadarnel27 非常感谢。我基本上只是想在主题部分添加一个额外的行。我在下面的回答将数据插入到一行中。
  • @jadarnel27 顺便说一句好听的曲子,把大黄蜂带回来!

标签: asp.net vb.net gridview row


【解决方案1】:

在您的 OnDataBound 事件中,尝试将您创建的行设置为“TableHeader”部分(就像您在 PreRenderComplete 事件中所做的那样),然后再将其添加到 GridView:

row.TableSection = TableRowSection.TableHeader

由于这会设置行所属的表格部分(页眉、页脚、正文),它应该会导致您的行在正确的位置结束。

【讨论】:

    【解决方案2】:

    我找不到在 vb 中执行此操作的方法。 要将内容应用到 thead 部分中的现有第 tr 行,您可以使用。

      <asp:TemplateField>
        <HeaderTemplate>
          <p>COL TITLE</p>
          <asp:TextBox ID="txBx" runat="server"/>
        </HeaderTemplate>
        <ItemTemplate>
          CELL DATA
        </ItemTemplate>
      </asp:TemplateField>
    

    这将导致:

        <thead>
          <tr>
            <th>
              <p>COL TITLE</p>
              <input id="txBx" type="text"/>
            </th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>
              COL DATA
            </td>
          </tr>
        </tbody>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-31
      • 1970-01-01
      • 2012-10-24
      • 1970-01-01
      • 1970-01-01
      • 2011-11-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多