当前位置: 移动技术网 > IT编程>开发语言>.net > GridView单元格合并

GridView单元格合并

2018年04月18日  | 移动技术网IT编程  | 我要评论

数码宝贝第四部国语全集,ddw当当网,芹素茶

#region 合并单元格 合并某一行的所有列
  ///  <summary> 
  ///  合并gridview中某行相同信息的行(单元格)
  ///  </summary> 
  ///  <param  name="gridview1">gridview对象</param> 
  ///  <param  name="cellnum">需要合并的行</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 name="gridview1">gridview id</param>
    /// <param name="rows">行</param>
    /// <param name="scol">开始列</param>
    /// <param name="ecol">结束列</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 name="gridview1"></param>
    /// <param name="cellnum"></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 name="gridview1">gridview id</param>
    /// <param name="cellnum">列</param>
    /// <param name="srow">开始行</param>
    /// <param name="erow">结束列</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

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网