我想把某一列相同内容的合并,但是却不能合并,相邻内容数据的可以合并,不相邻的不能合并,出现下面的问题。http://hi.csdn.net/attachment/201002/2/1403_1265082496T7Ov.jpg代码:
        protected void gvIntendanceNet_DataBound(object sender, EventArgs e)
        {
            int row = 0;
            for (int i = 1; i < gvIntendanceNet.Rows.Count; i++)
            {
                if (gvIntendanceNet.Rows[i].Cells[1].Text == gvIntendanceNet.Rows[i - 1].Cells[1].Text)
                {
                    if (gvIntendanceNet.Rows[row].Cells[1].RowSpan == 0)                        gvIntendanceNet.Rows[row].Cells[1].RowSpan++;
                    gvIntendanceNet.Rows[row].Cells[1].RowSpan++;
                    gvIntendanceNet.Rows[i].Cells[1].Visible = false;                }
                else
                {
                    row = i;
                }
            }        }为什么呢?

解决方案 »

  1.   

    http://www.cnblogs.com/peterzb/archive/2009/05/29/1491891.html这个对你应该有帮助
      

  2.   

    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; 
                        } 
                    } 
                } 
            } 
    http://topic.csdn.net/u/20091119/21/90e714df-77ca-4f46-8e2e-3c241e16d1a7.html
      

  3.   

    给lZ 贴一下 我做的分页吧!··希望给LZ 带来帮助
     //合并单元格
     public void GroupRows()
    {
              int i = 0, rowSpanNum = 1;
                //需要合并的列
                int _CD_C = Convert.ToInt32(ColsNo._CD_C);//单号
     while (i < this.GridView1.Rows.Count - 1)
    {
    GridViewRow gvr = GridView1.Rows[i];
    for (++i; i < this.GridView1.Rows.Count; i++)
    {
    GridViewRow gvrNext = GridView1.Rows[i];
    if (gvr.Cells[_CD_C].Text == gvrNext.Cells[_CD_C].Text)
    {
             //单号
              gvrNext.Cells[Convert.ToInt32(ColsNo._CD)].Visible = false;
             rowSpanNum++;
    }
     else

       //单元格跨越的行数
           //单号
           gvr.Cells[Convert.ToInt32(ColsNo._CD)].RowSpan = rowSpanNum;
              rowSpanNum = 1;
              break;
    }
     if (i == GridView1.Rows.Count - 1)
    {
               //单号
                gvr.Cells[Convert.ToInt32(ColsNo._CD)].RowSpan = rowSpanNum;
    }
    }
    }
    }
    括号LZ 自己对对 我在这里面编辑部习惯..
    ColsNo  我是对gridview定义的一个枚举  用来记住gridview列的位置
      

  4.   

    http://download.csdn.net/source/1831057
    这里有