asp.net中gridview数据相同行的列合并

来源:互联网 发布:淘宝压缩羽绒服男款 编辑:程序博客网 时间:2024/05/13 17:23

asp.net中gridview数据相同行的列合并

ASP.NET 2009-04-02 09:36:31 阅读155 评论0 字号:

asp.net中gridview数据相同行的列合并 - yh7272hy - 坏孩子的天空


public class GridDecorator

{

    public static void MergeRows(GridView gridView)

    {

        for (int rowIndex = gridView.Rows.Count - 2; rowIndex >= 0; rowIndex--)

        {

            GridViewRow row = gridView.Rows[rowIndex];

            GridViewRow previousRow = gridView.Rows[rowIndex + 1];

            for (int i = 0; i < row.Cells.Count; i++)

            {

                if (row.Cells[i].Text == previousRow.Cells[i].Text)

                {

                    row.Cells[i].RowSpan = previousRow.Cells[i].RowSpan < 2 ? 2 :

                                           previousRow.Cells[i].RowSpan + 1;

                    previousRow.Cells[i].Visible = false;

                }

            }

        }

    }

}
或者用repeater 实现 

 

在 PreRender 预呈现的事件中 做操作。

protected void gridView_PreRender(object sender, EventArgs e)

{

    GridDecorator.MergeRows(gridView);

}