#region 合并单元格 合并某一行的所有列 
  ///  <summary>  
  ///  合并GridView中某行相同信息的行(单元格) 
  ///  </summary>  
  ///  <param >GridView对象</param>  
  ///  <param >需要合并的行</param> 
  public static void GroupRow(GridView GridView1, int rows) 
  { 
  TableCell oldTc = GridView1.Rows[rows].Cells[0]; 
  for (int i = 1; i < GridView1.Rows[rows].Cells.Count; i++) 
  { 
  TableCell tc = GridView1.Rows[rows].Cells[i];  //Cells[0]就是你要合并的列 
  if (oldTc.Text == tc.Text) 
  { 
  tc.Visible = false; 
  if (oldTc.ColumnSpan == 0) 
  { 
  oldTc.ColumnSpan = 1; 
  } 
  oldTc.ColumnSpan++; 
  oldTc.VerticalAlign = VerticalAlign.Middle; 
        } 
        else 
        { 
          oldTc = tc; 
        } 
      } 
    } 
    #endregion 
    #region 合并单元格 合并一行中的几列 
    /// <summary> 
    /// 合并单元格 合并一行中的几列 
    /// </summary> 
    /// <param>GridView ID</param> 
    /// <param>行</param> 
    /// <param>开始列</param> 
    /// <param>结束列</param> 
    public static void GroupRow(GridView GridView1, int rows,int sCol,int eCol) 
    { 
       TableCell oldTc = GridView1.Rows[rows].Cells[sCol]; 
      for (int i = 1; i < eCol - sCol; i++) 
      { 
        TableCell tc = GridView1.Rows[rows].Cells[i + sCol];  //Cells[0]就是你要合并的列 
        tc.Visible = false; 
        if (oldTc.ColumnSpan == 0) 
        { 
          oldTc.ColumnSpan = 1; 
        } 
        oldTc.ColumnSpan++; 
        oldTc.VerticalAlign = VerticalAlign.Middle; 
      } 
    } 
    #endregion 
    #region 合并单元格 合并某一列所有行 
    /// <summary> 
    /// 合并GridView中某列相同信息的行(单元格) 
    /// </summary> 
    /// <param></param> 
    /// <param></param> 
    public static void GroupCol(GridView GridView1, int cols) 
    { 
      if (GridView1.Rows.Count < 1 || cols > GridView1.Rows[0].Cells.Count - 1) 
      { 
        return; 
      } 
      TableCell oldTc = GridView1.Rows[0].Cells[cols]; 
      for (int i = 1; i < GridView1.Rows.Count; i++) 
      { 
        TableCell tc = GridView1.Rows[i].Cells[cols]; 
        if (oldTc.Text == tc.Text) 
        { 
          tc.Visible = false; 
          if (oldTc.RowSpan == 0) 
          { 
            oldTc.RowSpan = 1; 
          } 
          oldTc.RowSpan++; 
          oldTc.VerticalAlign = VerticalAlign.Middle; 
        } 
        else 
        { 
          oldTc = tc; 
        } 
      } 
    } 
    #endregion 
    #region 合并单元格 合并某一列中的某些行 
    /// <summary> 
    /// 合并单元格 合并某一列中的某些行 
    /// </summary> 
    /// <param>GridView ID</param> 
    /// <param>列</param> 
    /// <param>开始行</param> 
    /// <param>结束列</param> 
    public static void GroupCol(GridView GridView1, int cols,int sRow,int eRow) 
    { 
      if (GridView1.Rows.Count < 1 || cols > GridView1.Columns.Count - 1) 
      { 
        return; 
      } 
      TableCell oldTc = GridView1.Rows[sRow].Cells[cols]; 
      for (int i = 1; i < eRow - sRow; i++) 
      { 
        TableCell tc = GridView1.Rows[sRow + i].Cells[cols];  
        tc.Visible = false; 
        if (oldTc.RowSpan == 0) 
        { 
          oldTc.RowSpan = 1; 
        } 
        oldTc.RowSpan++; 
        oldTc.VerticalAlign = VerticalAlign.Middle; 
      } 
    } 
    #endregion
