【转】datagridview 动态合并单元格代码

来源:互联网 发布:源码资本 编辑:程序博客网 时间:2024/06/06 01:46

转自:http://www.360doc.com/content/12/1219/22/10939365_255183523.shtml

效果如下图第一列“国家”,相同的数据可以合并为一个单元格显示。
我的datagridview数据源是通过图形化界面拖放dataset与数据库教程绑定的

  

/// <summary>
/// 合并GridView中某列相同信息的行(单元格) 
/// </summary>
/// <param name="GridView1">GridView</param>
/// <param name="cellNum">第几列</param>
public static void GroupRows(GridView GridView1, int cellNum)
{
    int i = 0, rowSpanNum = 1;
    while (i < GridView1.Rows.Count - 1)
    {
        GridViewRow gvr = GridView1.Rows[i];

        for ( i; i < GridView1.Rows.Count; i )
        {
            GridViewRow gvrNext = GridView1.Rows[i];
            if (gvr.Cells[cellNum].Text == gvrNext.Cells[cellNum].Text)
            {
                gvrNext.Cells[cellNum].Visible = false;
                rowSpanNum ;
            }
            else
            {
                gvr.Cells[cellNum].RowSpan = rowSpanNum;
                rowSpanNum = 1;
                break;
            }

            if (i == GridView1.Rows.Count - 1)
            {
                gvr.Cells[cellNum].RowSpan = rowSpanNum;
            }
        }
    }
}


0 0
原创粉丝点击