CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

Web上如何合并DataGrid的列头,100向送

楼主lok9828(武力解决一切)2004-08-01 01:07:00 在 .NET技术 / ASP.NET 提问

如题目 问题点数:100、回复次数:5Top

1 楼fly_miss(新年新气象)回复于 2004-08-01 01:18:38 得分 20

可以啊  
  protected   override   void   OnItemCreated(DataGridItemEventArgs   e)      
              {                
                 
                    if   ((ListItemType)e.Item.ItemType   ==   ListItemType.Header)      
                    {    
   
                             
                          //   获得DataGrid的列数,并清除所有单元格    
                          int   colcount   =   e.Item.Cells.Count;    
                          e.Item.Cells.Clear();    
   
                          //   新建一个单元格    
                          TableCell   c   =   new   TableCell();    
                          c.ColumnSpan   =   colcount;    
   
                          //   新建一个Label用于存放首行的文字                      
                          Label   l=new   Label();                      
                          l.Text   =   "这是首行文字";    
                       
   
                          //   添加到DataGrid的首行    
                          c.Controls.Add(l);    
                          e.Item.Cells.AddAt(0,   c);    
                    }                      
              }Top

2 楼xinyu_1980(心雨)回复于 2004-08-01 09:02:52 得分 0

关注Top

3 楼goody9807(http://goody9807.cnblogs.com)回复于 2004-08-01 09:03:05 得分 60

、DataGrid显示双层表头  
  http://xml.sz.luohuedu.net/xml/ShowDetail.asp?id=B3F3462D-DC34-41CE-9FEE-6965B2A3D1AD  
  假设你的DataGrid有三列,现在想将前两列作为"大类1",第三列作为"大类2",现在,你可以在ItemDataBound事件中加入下面的代码:  
  if   (e.Item.ItemType   ==   ListItemType.Header)  
  {  
  e.Item.Cells[0].ColumnSpan   =   2;  
  e.Item.Cells[0].Text   =   "大类1</td><td>大类2</td></tr><tr><td>"   +   e.Item.Cells[0].Text;  
  }  
  用这个方法可以为任意添加新行。  
    C#  
  if   (e.Item.ItemType   ==   ListItemType.Header)  
  {  
  DataGridItem   dgi   =   new   DataGridItem(0,-1,ListItemType.Header);  
  DataGridItem   dgi1=   new   DataGridItem(0,-1,ListItemType.Header);  
  Table   tb   =   new   Table();  
  tb   =   (Table)DataGrid1.Controls[0];  
  tb.Rows.AddAt(0,dgi);  
  tb.Rows.AddAt(1,dgi1);  
  TableCell   tc   =   new   TableCell();  
  TableCell   tc1   =   new   TableCell();  
  TableCell   tc2   =   new   TableCell();  
  TableCell   tc22   =   new   TableCell();  
  tc.Text   =   "ddd";  
  tc.ColumnSpan   =   1;  
  dgi.Cells.Add(tc);  
  tc1.Text   =   "ddd2";  
  tc1.ColumnSpan   =   1;  
  dgi.Cells.Add(tc1);  
  tc2.Text   =   "ddd";  
  tc2.ColumnSpan   =   1;  
  dgi1.Cells.Add(tc2);  
  tc22.Text   =   "ddd2";  
  tc22.ColumnSpan   =   1;  
  dgi1.Cells.Add(tc22);  
   
  }  
  Top

4 楼gaofeng2000(高老师)回复于 2004-08-01 09:51:25 得分 0

长见识Top

5 楼cuike519(I will be back!)回复于 2004-08-01 13:17:06 得分 20

http://www.csdn.net/Develop/read_article.asp?id=27465Top

相关问题

  • ASP.NET如何跨栏合并DataGrid标头
  • datagrid 页眉合并
  • 怎样合并DataGrid表头,在线等待 !
  • 请问 datagrid 能不能 多个 列头 合并 显示 ??????? 急!!!!!
  • 请教:datagrid中合并行
  • C#,WinForm中,如何实现DataGrid的多行表头(要实现表头相同内容的合并)
  • DataGrid怎么合并页脚 或合并某行 某列
  • DataGrid单元格合并的问题
  • 如何合并datagrid中的某一列
  • 请问怎么合并datagrid中的两列?不胜感谢!

关键词

  • .net
  • datagrid
  • tc
  • tablecell
  • columnspan
  • dgi
  • addat
  • cells
  • listitemtype
  • ddd

得分解答快速导航

  • 帖主:lok9828
  • fly_miss
  • goody9807
  • cuike519

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo