gridview合并单元格

主要功能是合并gridview某一列中相同的单元格代码如下

/// <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;
               }
           }
       }
   }  

调用方法

protected void gv_List_PreRender(object sender, EventArgs e)
   {
       GroupRows(this.gv_List, 1);
   }

发表评论

电子邮件地址不会被公开。 必填项已用*标注