datagrid合并列
我要在datagrid是实现下面效果.也就是第一行全部合并了.请问要怎样实现呀?
货盘
集装箱货盘 300 查看 未申请
散杂货盘 300 查看 未申请
历史集装箱货盘 200 查看 未申请
历史散杂货盘 200 查看 未申请
------解决方案--------------------protected void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Header)
{
DataGridItem item = new DataGridItem(0, 0, ListItemType.Item);
TableCell cell = new TableCell();
cell.ColumnSpan = e.Item.Cells.Count;
cell.HorizontalAlign = HorizontalAlign.Center;
cell.Text = "货盘 ";
item.Cells.Add(cell);
this.DataGrid1.Controls[0].Controls.Add(item);
}
}
------解决方案--------------------这么弄
==============================
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Header)
{
TableCell tc0= e.Item.Cells[0];
TableCell tc1=e.Item.Cells[1];
TableCell tc2=e.Item.Cells[2];
TableCell tc3=e.Item.Cells[3];
tc0.Visible=false;
tc2.Visible=false;
tc3.Visible=false;
tc1.ColumnSpan=4;
}
}
===========================
因为合并后 【货盘】的位置就不好控制了 你自己慢慢调整下吧 ^_^
------解决方案--------------------if(perent_id==0)
{
e.Item.Cells[0].ColumnSpan = e.Item.Cells.Count;
//...
while(e.Item.Cells.Count > 1)
{
e.Item.Cells.RemoveAt(1);
}
}