GridView多行表头合并实践

思路:如果想实现多表头,得自己绘制tablecell,具体的方式就是先添加一个新的TableHeaderCell,然后就是设定其Attributes属性,再者如果要进行单元格合并,那么需要指定其colspan或者是rowspan,以便确定是横向合并还是竖向合并。

实现方式:因为表头会自动产生<th>和</th>标签,所以在去除这2个标签的基础上,自行构造行和列并按顺序增加到html文本上。

代码:
protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
    switch (e.Row.RowType)
    {
       case DataControlRowType.Header:
         TableCellCollection tcHeader = e.Row.Cells;
         tcHeader.Clear();


         string headtxt = "企业层次</th>";
         headtxt += "<th colspan='5'>上期能源实绩</th>";
         headtxt += "<th colspan='3'>本期能源计划</th></tr><tr>";
         headtxt += "<th>能源</th><th>能耗</th><th>产品</th><th>产量</th><th>单耗</th>";
         headtxt += "<th>计划产量</th><th>计划能耗</th><th>对比</th></tr><tr>";
         headtxt = headtxt.Substring(0, headtxt.Length - 5);  //移除掉最后一个</th>


         TableHeaderCell cell = new TableHeaderCell();
         cell.Attributes.Add("rowspan", "2");  //跨两行
         cell.Text = (headtxt);
         tcHeader.Add(cell);
         break;
    }
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值