C# 在每行之后动态重复标题行
如何在gridview的每一行之后重复标题行?如果不重新编写控件呈现方法,则无法重复。使用转发器并将其也放在项目分隔符元素中如何?好吧,将标题的标记也放在项目模板中更容易。为类似这样的东西重写Render方法可能有些过分C# 在每行之后动态重复标题行,c#,asp.net,C#,Asp.net,如何在gridview的每一行之后重复标题行?如果不重新编写控件呈现方法,则无法重复。使用转发器并将其也放在项目分隔符元素中如何?好吧,将标题的标记也放在项目模板中更容易。为类似这样的东西重写Render方法可能有些过分 但是,如果这样做是有原因的,那么您的问题中至少没有这样做。如果您需要在每个项目行中使用标题行标记,为什么不将当前标题中的标记包含到ItemTemplate中…?您可以向网格的rowdatabound事件添加代码: protected void GridView_RowDataB
但是,如果这样做是有原因的,那么您的问题中至少没有这样做。如果您需要在每个项目行中使用标题行标记,为什么不将当前标题中的标记包含到ItemTemplate中…?您可以向网格的rowdatabound事件添加代码:
protected void GridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
GridViewRow row = new GridViewRow(e.Row.RowIndex, 0, DataControlRowType.Header, DataControlRowState.Normal);
TableCell cell = new TableCell();
cell.Controls.Add(new Label { Text = "Header" }); //as needed
row.Cells.Add(cell);
Table tbl = (e.Row.Parent as Table);
tbl.Controls.AddAt(e.Row.RowIndex * 2 + 1, row);
}
}
在本例中,当您在“代码隐藏”中编写自己的代码时,我已完全删除了gridview标题。您能告诉我如何在“渲染方法”中执行此操作吗?最好描述您的场景,因为覆盖渲染是没有其他选项的方法,而且通常非常复杂。为什么否决了此操作?您好,Jan Frederik Carl,这是一个很好的代码,但是如果我想每10行显示一个标题,那么如何编写代码。在方法中,您应该检查RowIndex属性,如果它可以被10除,而不使用rest。在这种情况下,将标题添加到行之后。目前没有时间将代码组合在一起,但如果仍然需要,可以稍后再做。