GridView多行合并表头的实现

转载 2007年09月28日 23:33:00

表格的多行复合表头是在开发中经常遇到的问题,怎么扩展GridView控件以实现多行表头呢

主体思路是这样的,GridView在ASP.NET中最终是转化为html的表格格式来显示的,所以我们要在其中做点文章,
看下面这段代码:
    //在GridView的RowCreated事件中重写表头
    protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
    {
        判断创建的行是不是标题行
        if (e.Row.RowType == DataControlRowType.Header)
        {
            TableCellCollection tcl = e.Row.Cells;
            //清除自动生成的表头
             tcl.Clear();
            
            //添加新的表头
            tcl.Add(new TableHeaderCell());
            tcl[0].RowSpan = 2;
            tcl[0].Text = "标题s";
            Label l1 = new Label();
            l1.Text = "uu";
            Button bt = new Button();
            bt.Text = "1";
            //因为自定义表头,所以原来系统中实现的排序功能就失效了
        //下面语句可以自己在表头中添加控件,自己实现排序功能

            tcl[0].Controls.Add(l1);
            tcl[0].Controls.Add(bt);

            tcl.Add(new TableHeaderCell());
            tcl[1].ColumnSpan = 2;
            tcl[1].Text = "标题2";

            tcl.Add(new TableHeaderCell());
            tcl[2].RowSpan = 2;
            tcl[2].Text = "标题3";

            tcl.Add(new TableHeaderCell());
            tcl[3].ColumnSpan = 3;
            tcl[3].Text = "标题4";

            tcl.Add(new TableHeaderCell());
            tcl[4].RowSpan = 2;
            //这段是重点 其实在生成的html中tcl[4]转化为<th>标题5</th>
            //所以依照该原则注入html标签来实现,原理有些类似于SQL注入攻击

            tcl[4].Text = "标题5</th></tr><tr><th>标题2-1</th><th>标题2-2</th><th>标题4-1</th><th>标题4-2</th><th>标题4-3";


        }
    }


GridView多行表头合并

多行表头合并, 网上很多实例, 这里写的很详细, 力求让每个人都能看懂. 实现原理:GridView在ASP.NET中最终转为HMTL的表格显示表头。 在GridView创建行表头行时: e.Ro...
  • qwlovedzm
  • qwlovedzm
  • 2012年02月17日 13:38
  • 5371

asp.net gridview多行标题合并(通用)

效果图 前台代码 后台代码
  • nvhaixx
  • nvhaixx
  • 2016年11月25日 14:29
  • 852

ASP.NET—014:Gridview复合表头

继续看一个简单的ASP.NET应用。Gridview相信大家使用的比较多了,一般对多行数据进行展示和操作都会用到这个控件。而对于表头,也是很重要的一部分,它负责对数据进行分门别类的。而对于复合表头该如...
  • yysyangyangyangshan
  • yysyangyangyangshan
  • 2014年08月25日 00:31
  • 4101

devexpress实现多行表头(复合表头),附源代码

在许多项目中都会涉及到复合表头(多行表头),这里给大家分享一个devexpress实现多重表头的案例。 1、第一步将表格类型由默认的gridview变为bandedgridview,如图所示: ...
  • kehaigang29
  • kehaigang29
  • 2015年07月01日 09:21
  • 710

GridView多行表头创建

效果 序号 规格 基准名称 颜色 卡号 生产开始 生产结束 客户 流程卡数 总入库数量 其中补水数量 当前欠货数量 40 数量 40 数量 4...
  • qq285679784
  • qq285679784
  • 2014年11月13日 17:03
  • 595

C# WinForm开发系列 - DataGridView 表头合并拆分单元格

1.DataGridView实现课程表 testcontrol.rar 2.DataGridView二维表头及单元格合并 DataGridView单元格合并和二维表头.rar myMultiCo...
  • xuwei296
  • xuwei296
  • 2013年01月28日 11:04
  • 6332

解决 GridView 多行表头显示 的方法

这只是一个很简单的效果演示,实现 GridView  两行或多行表头的显示 我们先来看一下效果: 再来看看源代码: ...
  • zhang399401
  • zhang399401
  • 2011年10月10日 09:37
  • 4946

gridview 表头合并

多行表头合并, 网上很多实例, 这里写的很详细, 力求让每个人都能看懂. 实现原理:GridView在ASP.NET中最终转为HMTL的表格显示表头。 在GridView创建行表头行时: e.Ro...
  • y1535623813
  • y1535623813
  • 2017年05月04日 21:15
  • 344

GridView多行表头合并

多行表头合并, 网上很多实例, 这里写的很详细, 力求让每个人都能看懂. 实现原理:GridView在ASP.NET中最终转为HMTL的表格显示表头。 在GridView创建行表头行时: ...
  • jumtre
  • jumtre
  • 2014年08月13日 10:50
  • 1849

DevExpress GridControl复合表头(多行表头)设置

首先,DevExpress.XtraGrid的GridControl复合表头或多行表头的示例,界面如下图所示: 实现步骤: 1、将DevExpress的GridControl转换为BandedGr...
  • xunzaosiyecao
  • xunzaosiyecao
  • 2014年03月25日 19:08
  • 2623
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:GridView多行合并表头的实现
举报原因:
原因补充:

(最多只允许输入30个字)