会员
周边
众包
新闻
博问
闪存
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
天虎蓝骑士
‘疯狂的程序员’绝对不是靠狂妄和拼命的程序员,而是能够踏实,持续努力的程序员。等你真正做到了这两点,技术上去了,在写程序这个领域,能够限制你的只有你的想像力,到那个时候,你才算个‘疯狂的程序员’-------《疯狂程序员》
博客园
首页
新随笔
联系
管理
订阅
gridview 中对表头进行修改(多层)
后台事件函数
protected
void
gvRadar_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
=
"
台站号
"
;
Label l1
=
new
Label();
l1.Text
=
"
台站号
"
;
//
因为自定义表头,所以原来系统中实现的排序功能就失效了
//
下面语句可以自己在表头中添加控件,自己实现排序功能
tcl[
0
].Controls.Add(l1);
tcl.Add(
new
TableHeaderCell());
tcl[
1
].RowSpan
=
2
;
//
合并列
tcl[
1
].Text
=
"
台站名
"
;
tcl.Add(
new
TableHeaderCell());
tcl[
2
].RowSpan
=
2
;
//
合并行
tcl[
2
].Text
=
"
应发报台次
"
;
tcl.Add(
new
TableHeaderCell());
tcl[
3
].ColumnSpan
=
2
;
//
合并列
tcl[
3
].Text
=
"
及时报
"
;
tcl.Add(
new
TableHeaderCell());
tcl[
4
].ColumnSpan
=
2
;
tcl[
4
].Text
=
"
逾限报
"
;
tcl.Add(
new
TableHeaderCell());
tcl[
5
].ColumnSpan
=
2
;
//
这段是重点 其实在生成的html中tcl[5]转化为<th>标题5</th>
//
所以依照该原则注入html标签来实现,原理有些类似于SQL注入攻击
//
tcl[5].Text = "标题5</th></tr><tr><th>标题2-1</th><th> 标题2-2</th><th>标题4-1</th><th>标题4-2< /th><th>标题4-3<th>标题6</th><th>标题7< /th><th>标题8<th>标题9</th>";
tcl[
5
].Text
=
"
缺报</th></tr><tr><th>站次</th><th>百分率</th><th>站次</th><th>百分率</th><th>站次</th><th>百分率
"
;
}
前台gridview控件!
<
div
>
<
asp:GridView
ID
="GV_Radar"
runat
="server"
CssClass
="GridViewBorder"
AutoGenerateColumns
="false"
OnRowCreated
="gvRadar_RowCreated"
>
<%
--<
HeaderStyle CssClass
=
"
GridViewHeader
"
/>--
%>
<
RowStyle
CssClass
="GridViewRow"
/>
<
Columns
>
<
asp:BoundField
HeaderText
="台站号"
DataField
="台站号"
/>
<
asp:BoundField
HeaderText
="台站名"
DataField
="台站名"
/>
<
asp:BoundField
HeaderText
="应发报台次"
DataField
="应发报台次"
/>
<
asp:BoundField
HeaderText
="到报台次"
DataField
="到报台次"
/>
<
asp:BoundField
HeaderText
="到报百分率"
DataField
="到报百分率"
/>
<
asp:BoundField
HeaderText
="迟报台次"
DataField
="迟报台次"
/>
<
asp:BoundField
HeaderText
="迟报百分率"
DataField
="迟报百分率"
/>
<
asp:BoundField
HeaderText
="缺报台次"
DataField
="缺报台次"
/>
<
asp:BoundField
HeaderText
="缺报百分率"
DataField
="缺报百分率"
/>
</
Columns
>
<
EmptyDataTemplate
>
<
span
style
="color:Red; text-align:center;"
>
无任何数据
</
span
>
</
EmptyDataTemplate
>
</
asp:GridView
>
</
div
>
posted @
2009-04-02 19:33
天虎蓝骑士
阅读(
851
) 评论(
0
)
编辑
收藏
举报
会员力量,点亮园子希望
刷新页面
返回顶部
公告