单元格跨行合并,单元格跨列合并
来源:互联网 发布:积分兑换源码 编辑:程序博客网 时间:2024/05/17 07:55
protected voidGridView1_OnRowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.Header) //判断创建的行是不是标题行
{
GridViewRow rowHeader =new GridViewRow(0, 0,DataControlRowType.Header, DataControlRowState.Normal);
rowHeader.Font.Bold = true;//设置标题行的背景颜色,以及字体样式
e.Row.Attributes.Add("style","background-image:url('../image/right_bg2.jpg')");
TableCellCollection cells =e.Row.Cells;
cells.Clear(); //获得标题行,清空标题行的设置
cells.Add(new TableHeaderCell()); //添加一个标题单元
cells[0].ColumnSpan = 1;
cells[0].RowSpan = 2; //设置跨行.
//设置跨行.
cells[0].Text = "检测日期</th><th colspan=2>名称</th><thcolspan=2>二氧化硫</th><th colspan=2>颗粒物</th><th colspan=2>氮氧化合物</th><thRowSpan=2>备注</th></tr><tr style=\"background-image:url('../image/right_bg2.jpg')\"><th>公司</th><th>分厂</th><th>最大值</th><th>超标次数</th><th>最大值</th><th>超标次数</th><th>最大值</th><th>超标次数";
//序号<th RowSpan=2>占两行 <th colspan=2>占两列
}
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes.Add("onmouseover","c=this.style.backgroundColor;this.style.backgroundColor='#eafcd5'");
//变量c用与存储鼠标移动在行上时,原来的背景色,然后设置为'#CCCCCC'
e.Row.Attributes.Add("onmouseout","this.style.backgroundColor=c");
//当鼠标离开时,还原背景色
}
}
//#region 合并单元格 合并某一列中的某些行
///// <summary>///// 合并单元格 合并某一列中的某些行
///// </summary>
///// <param name="GridView1">GridView ID</param>
///// <param name="cellNum">列</param>
///// <param name="sRow">开始行</param>
///// <param name="eRow">结束列</param>
//public static void GroupCol1(GridView GridView1, int cols, int sRow, int eRow)
//{
// if (GridView1.Rows.Count < 1 || cols > GridView1.Columns.Count - 1)
// {
// return;
// }
// TableCell oldTc = GridView1.Rows[sRow].Cells[cols];
// for (int i = 1; i < eRow - sRow; i++)
// {
// TableCell tc = GridView1.Rows[sRow + i].Cells[cols];
// tc.Visible = false;
// if (oldTc.RowSpan == 0)
// {
// oldTc.RowSpan = 1;
// }
// oldTc.RowSpan++;
// oldTc.VerticalAlign = VerticalAlign.Middle;
// }
//}
//#endregion
#region 合并单元格 合并某一列所有行
/// <summary>
/// 合并GridView中某列相同信息的行(单元格)
/// </summary>
/// <param name="GridView1"></param>
/// <param name="cellNum"></param>
public static void GroupCol(GridView GridView1, int cols)
{
if (GridView1.Rows.Count < 1 || cols > GridView1.Rows[0].Cells.Count - 1)
{
return;
}
TableCell oldTc = GridView1.Rows[0].Cells[cols];
for (int i = 1; i < GridView1.Rows.Count; i++)
{
TableCell tc = GridView1.Rows[i].Cells[cols];
if (oldTc.Text == tc.Text)
{
tc.Visible = false;
if (oldTc.RowSpan == 0)
{
oldTc.RowSpan = 1;
}
oldTc.RowSpan++;
oldTc.VerticalAlign = VerticalAlign.Middle;
}
else
{
oldTc = tc;
}
}
}
#endregion
- 单元格跨行合并,单元格跨列合并
- [C#]合并单元格(行、列)
- poi导出excel合并单元格(包括列合并、行合并)
- [ruby语言]Spreadsheet合并单元格(行/列)
- js控制合并单元格-行/列
- DataExcel 控件 获取行,列,单元格, 合并单元格 获取合并后的单元格,并设置颜色
- EXTJS4.1单元格跨行合并
- 关于跨列单元格展开、隐藏之后合并…
- DevExpress GridControl 跨列横向合并单元格两个官方例子
- ireport合并多列单元格
- js竖列合并单元格
- js合并具有相同内容的单元格,跨行合并!
- datagridview合并单元格,行合并
- 单元格合并
- 合并单元格
- 合并单元格
- 合并单元格
- 合并单元格
- 版本发布后软件测试人员要做的工作
- thinkphp模块部分学习
- Linux中TCP连接过程状态简介
- AVFoundation视频播放(非音视频流处理)
- Hiho1186/ 第五十五周 连通性·四 点双连通分量
- 单元格跨行合并,单元格跨列合并
- 单例设计模式
- Hadoop jps出现process information unavailable提示解决办法
- mongodb-driver-async 如何使用GridFS
- icvGetAuxImages和cvIntegral
- 强连通分量分解 tarjan算法 (hdu 1269)
- TOJ 4127. God Le's Tree
- WERTYU输入错位后敲出的字符串(白书字符串)
- Rsync算法的探讨