本站业务范围:1、PC端软件开发、网站开发 2、移动端APP、网站、微信接口、微商城开发 3、视频教程、毕业设计辅导
 当前位置:文章中心 >> vs2015_vs2017_vs2010_vs2012_vs2013
立即购买视频教程 ASP.NET(C#)GridView表头的增加
夜鹰教程网 来源:www.yyjcw.com 日期:2015/11/14 18:35:55
分享到:
ASP.NET(C#)GridView表头的增加

这篇文章不能解决你的问题?我们还有相关视频教程哦!

QQ:1416759661 新手QQ群:7835003  加Q远程协助!

在线解答|Demo制作|远程调试| 点击查看相关的视频教程

技术咨询: 购买教程  技术咨询:购买教程  大胆的加QQ咨询。

<%@ Page Language="C#" AutoEventWireup="true" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>

<script runat="server">
  
// 计算数据,完全可以从数据看取得
   ICollection CreateDataSource( )
   {
     System.Data.DataTable dt
= new System.Data.DataTable();
     System.Data.DataRow dr;
     dt.Columns.Add(
new System.Data.DataColumn("学生班级", typeof(System.String)));
     dt.Columns.Add(
new System.Data.DataColumn("学生姓名", typeof(System.String)));
     dt.Columns.Add(
new System.Data.DataColumn("语文", typeof(System.Decimal)));
     dt.Columns.Add(
new System.Data.DataColumn("数学", typeof(System.Decimal)));
     dt.Columns.Add(
new System.Data.DataColumn("英语", typeof(System.Decimal)));
     dt.Columns.Add(
new System.Data.DataColumn("计算机", typeof(System.Decimal)));

    
for (int i = 0; i < 8; i++)
     {
       System.Random rd
= new System.Random(Environment.TickCount * i); ;
       dr
= dt.NewRow();
       dr[
0] = "班级" + i.ToString();
       dr[
1] = "学生" + i.ToString();
       dr[
2] = System.Math.Round(rd.NextDouble() * 100, 2);
       dr[
3] = System.Math.Round(rd.NextDouble() * 100, 2);
       dr[
4] = System.Math.Round(rd.NextDouble() * 100, 2);
       dr[
5] = System.Math.Round(rd.NextDouble() * 100, 2);
       dt.Rows.Add(dr);
     }
     System.Data.DataView dv
= new System.Data.DataView(dt);
    
return dv;
   }

   protected
void Page_Load( object sender, EventArgs e )
   {
    
if (!IsPostBack)
     {
       GridView1.BorderColor
= System.Drawing.Color.DarkOrange;
       GridView1.DataSource
= CreateDataSource();
       GridView1.DataBind();
     }
   }

   protected
void GridView1_RowCreated( object sender, GridViewRowEventArgs e )
   {

    
if (e.Row.RowType == DataControlRowType.Header)
     {
      
//创建一个GridViewRow,相当于表格的 TR 一行
       GridViewRow rowHeader = new GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Normal);
       string HeaderBackColor
= "#EDEDED";
       rowHeader.BackColor
= System.Drawing.ColorTranslator.FromHtml(HeaderBackColor);

      
//实现确定要显示的表头样式,也可以通过计算生成

      
//     <tr>
      //       <td rowspan='2'>关键单元格</td>
      //       <td colspan='2'>表头文字</td>
      //       <td colspan='2'>表头文字</td>
      //       <td>表头文字</td>
      //       </tr>
      //       <tr bgcolor='#FFF'>
      //       <td colspan='2'>表头文字</td>
      //       <td rowspan='2'>表头文字</td>
      //       <td colspan='2'>表头文字</td>
      //       </tr>
      //       <tr bgcolor='#FFF'>
      //       <td>表头文字</td>
      //       <td>表头文字</td>
      //       <td>表头文字</td>
      //       <td>表头文字</td>
      //       <td>表头文字</td>";
      //    </tr>
      // 上面的样式可以设置斜线

       Literal newCells
= new Literal();
       newCells.Text
= @"表头文字1</th>
                   <th colspan='2'>表头文字2</th>
                   <th colspan='2'>表头文字3</th>
                   <th>表头文字4</th>
                   </tr>
                   <tr bgcolor='
" + HeaderBackColor + "'>";
       newCells.Text
+= @"                         
                   <th colspan='2'>表头文字5</th>
                   <th rowspan='2'>表头文字6</th>
                   <th colspan='2'>表头文字7</th>
                   </tr>
                   <tr bgcolor='
" + HeaderBackColor + "'>";
       newCells.Text
+= @"  
                   <th>表头文字8</th>
                   <th>表头文字9</th>
                   <th>表头文字10</th>
                   <th>表头文字11</th>
                   <th>表头文字12
";

       TableCellCollection cells
= e.Row.Cells;
       TableHeaderCell headerCell
= new TableHeaderCell();
      
//下面的属性设置与 <td rowspan='2'>关键单元格</td> 要一致
       headerCell.RowSpan = 2;
       headerCell.Controls.Add(newCells);
       rowHeader.Cells.Add(headerCell);

       rowHeader.Cells.Add(headerCell);
       rowHeader.Visible
= true;

      
//添加到 GridView1
       GridView1.Controls[0].Controls.AddAt(0, rowHeader);
     }
   }

   protected
void GridView1_RowDataBound( object sender, GridViewRowEventArgs e )
   {
    
if (e.Row.RowType == DataControlRowType.Header)
     {
       e.Row.Attributes.Add(
"style", "background:#9999FF;color:#FFFFFF;font-size:14px");
     }
    
else
     {
       e.Row.Attributes.Add(
"style", "background:#FFF");
     }
   }
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  
<title>为 GridView 添加多层表头</title>
</head>
<body>
  
<form id="Form1" runat="server">
    
<asp:GridView ID="GridView1" runat="server" CellSpacing="1" CellPadding="3" Font-Size="12px"
       Width
="600px" BackColor="#000000" BorderWidth="0" OnRowDataBound="GridView1_RowDataBound"
       OnRowCreated
="GridView1_RowCreated">
    
</asp:GridView>
  
</form>
</body>
</html>


复制链接 网友评论 收藏本文 关闭此页
上一条: .net开发技巧篇一  下一条: GridView固定表头问题
购买夜鹰教程网视频教程
  推荐教程/优惠活动

  热门服务/教程目录

  夜鹰教程网  新手必看,详细又全面。
  夜鹰教程网  购买教程  夜鹰教程网  在线支付-方便
  夜鹰教程网  担保交易-快捷安全   夜鹰教程网  闪电发货
  夜鹰教程网  电话和QQ随时可以联系我们。
  夜鹰教程网 不会的功能都可以找我们,按工作量收费。

客服电话:153 9760 0032

购买教程QQ:1416759661  购买教程
  热点推荐
一个关于天气预报的WebService【C…
VS2010最大的新特点是并行编程的进…
TextBox控件:asp.net中如何为密码…
Web服务调用实例:实现天气预报的…
ASP.NET程序员面试试题(130道题)
ASP.NET教程:调用WebService的源码…
网站开发全程设计
据说这套.net面试题很多网络公司都…
考考你:C#常见题型及部分答案
原创:.net读取数据库sql2000
伪静态URL重写配置
配置web.config代码asp.net3.5个性…
使用线程池提高性能 Socket网络编…
ASP.NET(C#)GridView表头的增加…
如何找到正确的学习方向【.NET版】…
  尊贵服务
夜鹰教程网 承接业务:软件开发 网站开发 网页设计 .Net+C#+VS2008+MSsql+Jquery+ExtJs全套高清完整版视频教程
  最近更新
一个获取内容中的图片地址的方法
ASP.NET 4.0尚未在 Web 服务器上注…
四大作用域:application,session…
ConfigurationManager不存在的解决…
vs2012_vs2013_vs2015没有Web Dep…
vs2015禁用解决方案中单击打开文件…
微软为Visual Studio 2015新增安卓…
C#如何实现搜索引擎网络爬虫程序
C#中正则表达式的用法
用C#抓取需要登录的页面数据
VS2015新功能
VS2015安装图解教程
vs2015新功能介绍
vs2015安装图解
c#生成二维码和打印
  工具下载  需要远程协助? 购买教程

sql2008视频教程 c#视频教程

VIP服务:如果您的某个功能不会做,可以加我们QQ,给你做DEMO!

JQUERY  Asp.net教程

MVC视频教程  vs2012
.NET+sql开发
手机:15397600032 C#视频教程下载
vs2012 vs2008 vs2010 sql2008 sql2005
Asp.Net  

教程咨询QQ:1416759661


这篇文章不能解决你的问题?我们还有相关视频教程哦!

QQ:1416759661 新手QQ群:7835003  加Q远程协助!

在线解答|Demo制作|远程调试| 点击查看相关的视频教程

技术咨询: 购买教程  技术咨询:购买教程  大胆的加QQ咨询。

关于我们 | 广告投放 | 购买教程 | 网站建设 | 技术辅导 | 常见问题 | 联系我们 | 友情链接 | 购买教程

Nighthawk Tutorials Network 快捷购买教程

夜鹰教程网 版权所有 www.yyjcw.com All rights reserved 备案号:蜀ICP备08011740号3

 

出售asp.net系列视频教程 高清原创版 每天晚上20:30--23:00在线 按照编号从简单到高级 http://www.yyjcw.com/list.html