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

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

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


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);

}

 

你可能感兴趣的:(object,Class,asp.net)