如何在GridView中的每个分组行后添加一行?

时间:2012-01-17 06:24:02

标签: c# asp.net gridview

我使用的GridView有许多行具有相同的值,因此我使用GridViewHelper class对这些行进行了分组。现在我想在每个分组值之间添加一个单独的行。怎么做?

以下快照显示当前情况: enter image description here

2 个答案:

答案 0 :(得分:0)

我不确定您是否要在渲染时或单击该行时设置它们的样式。所以这两者都是。您可以决定所需的样式。 : - )

在ASP.NET GridView控件中设置适当的属性以控制CSS:

<asp:GridView ID="gridviewid" 
                      runat="server" 
                      CssClass="gridview" 
                      AutoGenerateSelectButton="True" 
                      GridLines="None"
                      AllowPaging="true"
                      PageSize="10">
            <HeaderStyle CssClass="gridViewHeader" />
            <RowStyle CssClass="gridViewRow" />
            <AlternatingRowStyle CssClass="gridViewAltRow" />
            <SelectedRowStyle CssClass="gridViewSelectedRow" />
            <PagerStyle CssClass="gridViewPager" />
        </asp:GridView>


protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        e.Row.CssClass = "cssClass";
    }
}

答案 1 :(得分:0)

您可以尝试类似......

protected void Page_Load(object sender, EventArgs e)
{
    GridViewHelper helper = new GridViewHelper(this.GridView1);
    helper.RegisterGroup("yourGroupName", true, true);
    helper.GroupHeader += new GroupEvent(helper_GroupHeader);
}

private void helper_GroupHeader(string groupName, object[] values, GridViewRow row)
{
    if (groupName == "yourGroupName" )
    {
        row.Cells[0].Text = "<br />" + row.Cells[0].Text;
    }
} 

你也应该能够在row之前插入一个新的,而不是只是在单元格中添加一个断行,如果这是你想要的。