`

asp.net gridview 合并标题和列单元格

    博客分类:
  • .Net
阅读更多
        //合併gridview表頭
        #region
        public static void GroupHeaderRow(GridView GridView1, int rows, int sCol, int eCol)
        {
            TableCell oldTc = GridView1.HeaderRow.Cells[sCol];
            for (int i = 1; i < eCol - sCol; i++)
            {
                TableCell tc = GridView1.HeaderRow.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;
                    //tc.Text = "";
          if (oldTc.RowSpan == 0)
          {
            oldTc.RowSpan = 1;
          }
          oldTc.RowSpan++;
          oldTc.VerticalAlign = VerticalAlign.Middle;
        }
        else
        {
          oldTc = tc;
        }
      }
    }
    #endregion

    #region
    /// <summary>
    /// 合并GridView中某列相同信息的行(单元格)
    /// </summary>
    /// <param name="GridView1"></param>
    /// <param name="cellNum"></param>
    public static void GroupCol(GridView GridView1, int beforcols,int cols)
    {
        if (GridView1.Rows.Count < 1 || cols > GridView1.Rows[0].Cells.Count - 1)
        {
            return;
        }
        TableCell oldTc = GridView1.Rows[0].Cells[cols];
        TableCell boldTc = GridView1.Rows[0].Cells[beforcols];
        for (int i = 1; i < GridView1.Rows.Count; i++)
        {
            TableCell tc = GridView1.Rows[i].Cells[cols];
            TableCell btc = GridView1.Rows[i].Cells[beforcols];
            if (boldTc.Text == btc.Text)//如果前一項相同
            {
                if (oldTc.Text == tc.Text)//本項相同 合併
                {
                    tc.Visible = false;
                    //tc.Text = "";
                    if (oldTc.RowSpan == 0)
                    {
                        oldTc.RowSpan = 1;
                    }
                    oldTc.RowSpan++;
                         
                    oldTc.VerticalAlign = VerticalAlign.Middle;
                }
                else//本項不同
                {
                    oldTc = tc;
                }
            }
            else//前一項不同
            {               
                    oldTc = tc;
            }    
        }
    }
    #endregion
分享到:
评论

相关推荐

    ASP.net GridView合并单元格

    ASP.NET GridView 控件是.NET Framework 中用于数据展示的强大工具,尤其在Web应用程序中,它能够以表格形式方便地展示和操作数据库数据。GridView允许开发者轻松地进行数据绑定、排序、分页以及对数据进行编辑、...

    asp.net gridview 合并表头。合并列

    可以设置`display: table-cell`和`display: table-row`来模拟表格的行和列,同时使用`colspan`属性来合并单元格。例如: ```css .gridHeader { display: table-header-group; } .gridCell { display: table-...

    ASP.NET 2.0中合并 GridView 的表头单元格

    这样,当页面加载时,GridView的表头将显示一个名为“学生成绩”的合并单元格,涵盖所有课程成绩的列。这使得用户可以更直观地理解表格的内容,提高了界面的可读性。 总结起来,合并ASP.NET 2.0中GridView的表头...

    asp.net_合并GridView中某列相同信息的行(单元格

    ### ASP.NET 合并 GridView 中某列相同信息的行(单元格) 在 ASP.NET 开发过程中,经常会遇到需要处理表格数据的情况,其中一种常见的需求就是合并 GridView 控件中某列相同信息的行(单元格)。这种方法可以使得...

    重写Asp.net中GridView,增加冻结窗口等多项功能

    一个多功能的GridView,在asp.net原有的GridView上增加了11个新功能,包括分组,冻结窗口,鼠标事件,复合排序,联动复选框,响应行的单击事件和双击事件,行右键菜单,自定义分页样式,合并指定列的相邻且内容相同的单元格等...

    asp.net 单元格任意合并

    标题"asp.net 单元格任意合并"指向的是如何在GridView中进行复杂的单元格合并操作,这通常涉及到对表格结构的自定义和编程控制。描述中提到的"四个过程"可能指的是合并单元格的一系列步骤,包括但不限于数据绑定、...

    GridView合并单元格

    在标题“GridView合并单元格”中,这个话题主要探讨的是如何在GridView中实现单元格的合并。 合并GridView的单元格并非简单的HTML操作,因为GridView在服务器端自动生成表格(HTML `&lt;table&gt;`)。实际上,我们是在...

    ASP.NET—014:Gridview复合表头

    在ASP.NET中,GridView默认提供了一种简单的行和列结构,但为了满足更复杂的需求,例如多级表头或合并单元格,我们需要深入理解其模板和编程特性。复合表头允许我们在表头中创建层次结构,这对于显示分组数据或者...

    GridView动态创建列头丶自定义多行合并表头

    ### GridView动态创建列头与自定义多行合并表头 #### 一、概述 在Web开发中,`GridView` 控件被广泛应用于显示表格数据。它不仅提供了强大的数据绑定功能,还支持各种自定义设置,使得开发者能够根据具体需求灵活...

    ASP.NET递归加载和合并单元格

    在ASP.NET开发中,递归加载和合并单元格是构建复杂数据展示,特别是表格和网格视图时常用的技术。这两个概念对于创建具有高效性能和良好用户体验的动态网页至关重要。下面我们将详细探讨这两个主题。 首先,让我们...

    asp中gridview合并单元格

    6. **文档资源**:压缩包中的"asp.net_合并GridView中某列相同信息的行(单元格).doc"文档可能提供了详细的示例代码和步骤解释,建议查阅该文档以获取更具体的实现细节。 通过以上步骤,我们可以实现GridView中...

    ASP.NET中GridView 重复表格列合并的实现方法

    接着,通过自定义的MergeRows方法,可以在前台代码中通过Label控件来显示数据,并通过遍历每一列和每一行,比较当前行和上一行的内容,如果内容相同则进行合并处理。 在实现重复数据合并的具体操作中,首先获取...

    devexpress 自定义合并单元格和表头

    2. **Frozen Columns and Rows**:通过设置`GridView.FrozenColumns`和`GridView.FrozenRows`属性,可以固定左侧的列和顶部的行。这在用户滚动时,始终保持部分关键数据可见。 3. **自定义固定效果**:对于更复杂的...

    ASP.NET中GridView和Repeater重复数据如何合并

    在ASP.NET中,GridView和Repeater是两种常用的控件,用于展示数据集合。它们都具有高度自定义的能力,但处理重复数据时,需要通过编程来实现数据合并,以提高数据展示的效率和用户体验。以下是对这两种控件进行重复...

    DataGridView合并单元格(纵向合并及横向合并)

    本篇将详细讲解如何在C#环境下,实现DataGridView的纵向和横向合并单元格。 首先,我们需要理解“纵向合并”和“横向合并”的概念。纵向合并是指将多个连续的行合并成一个大行,共享同一个单元格内容;横向合并则是...

    GridView合并表头单元格

    本篇文章将深入探讨如何在ASP.NET中实现GridView的表头单元格合并,以创建更加清晰、有组织的数据展示。 首先,我们需要理解为什么要合并表头单元格。在一些复杂的数据展示场景中,一个列可能对应多个子列,这时...

    合并GridView里面的单元格

    对于列合并,由于ASP.NET GridView本身不直接支持,通常需要更复杂的逻辑,例如创建自定义控件或者使用其他布局控件(如Table)来模拟列合并的效果。 在实际开发中,除了考虑合并逻辑,还需要注意性能优化,避免在...

    ASP.NET GridView 实现课程表显示(动态合并单元格)实现步骤

    但是,课程表的显示可不是这么简单,它需要将普通记录继续加工,需要根据记录中具体的数据来确定数据需要显示在哪一行、哪一列,而且需要根据课程开始时间和结束时间动态合并单元格,最后才是数据的显示。...

    横向合并单元格.zip

    在IT领域,特别是软件开发和UI设计中,DevExpress的GridControl是一个非常强大的数据网格控件,广泛应用于Windows Forms、ASP.NET、WPF等平台。它提供了丰富的功能,使得数据展示和操作更加便捷。本篇文章将深入探讨...

Global site tag (gtag.js) - Google Analytics