datagrid的行、列都可以进行合并的!!
解决方案 »
- 如何判断IE同名(同title)窗口的数量?
- 关于大型BS系统的重难点问题
- 怎样取到页面文件名?
- 如何让TabControl控件的背景色自动适应XP样式和经典样式?
- 紧急求助:VS2008使用服务引用的问题
- 小问题,,散分,,,要接分的快来..!!!
- C#如何读取固定格式DAT
- 我在机器上新建一个C#的控制台应用程序的工程,提示automation服务器不能创建对象,这是什么原因啊,怎么解决啊,谢谢,解决后立即给分
- 请教一个关于Convert.ToInt32的应用问题,请高手帮忙帮忙!
- 关于C#2005和C#2003对于数据库方面的区别
- 谁能给一段用.net + “managed directx”编写的透明物体的代码,多谢了!
- 多点下载文件时如何能做到象BT那样对CPU使用率
/// <summary>
/// 在DATAGRID中合并内容相同的单元格及实现行色彩交替
/// </summary>
/// <param name="dg"></param>
/// <param name="cellNo">合并Column的编号</param>
/// <param name="firstColor">交替颜色</param>
/// <param name="secondColor">交替颜色</param>
private void SpanDataGrid(DataGrid dg,int cellNo,Color firstColor,Color secondColor)
{
int intSpan=1; //记录合并的行数
int rowNo=0;//记录所在行号
string strTemp; //记录标准比较值
bool flag=false;//标记第一行
dg.Items[0].BackColor=firstColor;
strTemp=dg.Items[0].Cells[cellNo].Text;//初始化标准比较值
//循环操作
foreach(DataGridItem item in dg.Items)
{
if(strTemp==item.Cells[cellNo].Text)
{
if(flag)//判断是否是合并第一行
{
intSpan+=1; //增加合并的行数
item.Cells[cellNo].Visible=false;//隐藏相同行
//设置颜色
if(dg.Items[item.ItemIndex-1].BackColor==firstColor)
item.BackColor=secondColor;
else
item.BackColor=firstColor;
}
flag=true;
}
else
{ strTemp=item.Cells[cellNo].Text;//替换标准比较值
//设置颜色
if(dg.Items[rowNo].BackColor==firstColor)
item.BackColor=secondColor;
else
item.BackColor=firstColor;
dg.Items[rowNo].Cells[cellNo].RowSpan=intSpan; //合并
intSpan=1;//初始化
item.Cells[cellNo].Visible=true;//显示
rowNo=item.ItemIndex;//记录行号
}
}
//最后一次合并
dg.Items[rowNo].Cells[cellNo].RowSpan=intSpan;
}
<TemplateColumn>
<ItemTemplate>
<table>
<tr>
<td>
<img align="top" src='"路径"+<%# DataBinder.Eval(Container.DataItem, "字段1") %>' >
</td>
<td>
<img align="top" src='"路径"+<%# DataBinder.Eval(Container.DataItem, "字段2") %>' >
</td>
</table>
</ItemTemplate>
</asp:TemplateColumn>or:
用datalist:只要设置RepeatDirection="Horizontal" RepeatColumns="3" 即可