如何在ASP.NET中合并DataGridView的列标题,实现如下的效果图:
protected
void
GridView1_RowCreated(
object
sender, GridViewRowEventArgs e)
{
switch (e.Row.RowType)
{
case DataControlRowType.Header:
// 第一行表头
TableCellCollection tcHeader = e.Row.Cells;
tcHeader.Clear();
tcHeader.Add( new TableHeaderCell());
// 跨3行
tcHeader[ 0 ].Attributes.Add( " rowspan " , " 3 " );
tcHeader[ 0 ].Attributes.Add( " bgcolor " , " white " );
tcHeader[ 0 ].Text = "" ;
tcHeader.Add( new TableHeaderCell());
// 跨6列
tcHeader[ 1 ].Attributes.Add( " colspan " , " 6 " );
tcHeader[ 1 ].Text = " 全部信息</th</tr><tr> " ;
// 第二行表头
tcHeader.Add( new TableHeaderCell());
tcHeader[ 2 ].Attributes.Add( " bgcolor " , " DarkSeaGreen " );
tcHeader[ 2 ].Text = " 身份证号码 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 3 ].Attributes.Add( " bgcolor " , " LightSteelBule " );
tcHeader[ 3 ].Attributes.Add( " colspan " , " 2 " );
tcHeader[ 3 ].Text = " 基本信息 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 4 ].Attributes.Add( " bgcolor " , " DarkSeaGreen " );
tcHeader[ 4 ].Text = " 福利 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 5 ].Attributes.Add( " bgcolor " , " LightSteelBule " );
tcHeader[ 5 ].Attributes.Add( " colspan " , " 2 " );
tcHeader[ 5 ].Text = " 联系方式</th></tr><tr> " ;
// 第三行表头
tcHeader.Add( new TableHeaderCell());
tcHeader[ 6 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 6 ].Text = " 身份证号码 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 7 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 7 ].Text = " 姓名 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 8 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 8 ].Text = " 出生日期 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 9 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 9 ].Text = " 薪水 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 10 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 10 ].Text = " 家庭住址 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 11 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 11 ].Text = " 邮政编码 " ;
break ;
}
}
{
switch (e.Row.RowType)
{
case DataControlRowType.Header:
// 第一行表头
TableCellCollection tcHeader = e.Row.Cells;
tcHeader.Clear();
tcHeader.Add( new TableHeaderCell());
// 跨3行
tcHeader[ 0 ].Attributes.Add( " rowspan " , " 3 " );
tcHeader[ 0 ].Attributes.Add( " bgcolor " , " white " );
tcHeader[ 0 ].Text = "" ;
tcHeader.Add( new TableHeaderCell());
// 跨6列
tcHeader[ 1 ].Attributes.Add( " colspan " , " 6 " );
tcHeader[ 1 ].Text = " 全部信息</th</tr><tr> " ;
// 第二行表头
tcHeader.Add( new TableHeaderCell());
tcHeader[ 2 ].Attributes.Add( " bgcolor " , " DarkSeaGreen " );
tcHeader[ 2 ].Text = " 身份证号码 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 3 ].Attributes.Add( " bgcolor " , " LightSteelBule " );
tcHeader[ 3 ].Attributes.Add( " colspan " , " 2 " );
tcHeader[ 3 ].Text = " 基本信息 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 4 ].Attributes.Add( " bgcolor " , " DarkSeaGreen " );
tcHeader[ 4 ].Text = " 福利 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 5 ].Attributes.Add( " bgcolor " , " LightSteelBule " );
tcHeader[ 5 ].Attributes.Add( " colspan " , " 2 " );
tcHeader[ 5 ].Text = " 联系方式</th></tr><tr> " ;
// 第三行表头
tcHeader.Add( new TableHeaderCell());
tcHeader[ 6 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 6 ].Text = " 身份证号码 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 7 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 7 ].Text = " 姓名 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 8 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 8 ].Text = " 出生日期 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 9 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 9 ].Text = " 薪水 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 10 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 10 ].Text = " 家庭住址 " ;
tcHeader.Add( new TableHeaderCell());
tcHeader[ 11 ].Attributes.Add( " bgcolor " , " Khaki " );
tcHeader[ 11 ].Text = " 邮政编码 " ;
break ;
}
}