在线等,grid控件如何才能设置多行页眉?

K_top 2004-09-17 11:11:58

DataGrid控件如何才能设置多行页眉?

如:

| 加班 | 请假 |
|开始日期|结束日期|耗时数|开始日期|结束日期|耗时数|


dataGrid属性里不可设置吧?在线等。。。。。
...全文
101 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
ark_matrix 2004-09-17
  • 打赏
  • 举报
回复
这样<HeaderTemplate>
<FONT face="宋体">
<TABLE id="Table1" cellSpacing="1" cellPadding="1" width="100" border="1">
<TR>
<TD>加班</TD>
</TR>
<TR>
<TD>开始日期</TD>
</TR>
</TABLE>
</FONT>
</HeaderTemplate>
K_top 2004-09-17
  • 打赏
  • 举报
回复
把表头用table实现??
如何写?
是这样吗?
<asp:TemplateColumn>
<HeaderTemplate>
<table>...</table>
</HeaderTemplate>
<asp:TemplateColumn>
这样不行的。
ark_matrix 2004-09-17
  • 打赏
  • 举报
回复
那个例子我看了,用的也是表格,其实datagrid到了客户端也是table。
我看你做的应该是报表类的东西吧,对于这种格式比较固定的表格,在design时写好就行了,不要用服务器端的代码实现,会增加服务器负担,也不直观。
总之,没有固定的一种解决方法,送你四个字,随机应变。
wnlovezxm 2004-09-17
  • 打赏
  • 举报
回复
别用表格,页面大小变化对不齐!
ark_matrix 2004-09-17
  • 打赏
  • 举报
回复
还有一种方法,把表头用table实现,数据用无表头的datagrid实现,唯一要注意的问题就是列宽要确定,要对齐。
wnlovezxm 2004-09-17
  • 打赏
  • 举报
回复
Look Here:
代码片断
1、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);

}

K_top 2004-09-17
  • 打赏
  • 举报
回复
谢谢你的支持!
ark_matrix 2004-09-17
  • 打赏
  • 举报
回复
我试了一下,可以,就是要弄好那些表格的样式,我看你的意思是把这些列分组,但上边的一排不绑定数据,用我的方法肯定可以的.
ark_matrix 2004-09-17
  • 打赏
  • 举报
回复
用模版列应该可以变通的实现,不过可能比较麻烦,你在表头的模版列里嵌表格试试

111,125

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧