C# 如何合并gridview行
我想合并表,但不知道如何合并。我已经试过很多次了,但仍然无法找到正确的解决方案。现在我的gridview是这样的:C# 如何合并gridview行,c#,asp.net,gridview,merge,C#,Asp.net,Gridview,Merge,我想合并表,但不知道如何合并。我已经试过很多次了,但仍然无法找到正确的解决方案。现在我的gridview是这样的: Data 1 | Data 1 | Data 1 | Data 1 Data 1 | Data 1 | Data 1 | Data 1 Data 2 | Data 2 | Data 2 | Data 2 Data 2 | Data 2 | Data 2 | Data 2 我希望gridview是这样的: Data 1 | D
Data 1 | Data 1 | Data 1 | Data 1
Data 1 | Data 1 | Data 1 | Data 1
Data 2 | Data 2 | Data 2 | Data 2
Data 2 | Data 2 | Data 2 | Data 2
我希望gridview是这样的:
Data 1 | Data 1 | Data 1 | Data 1
| Data 1 | Data 1 |
Data 2 | Data 2 | Data 2 | Data 2
| Data 2 | Data 2 |
- 这对你有帮助
public class GridDecorator
{
public static void MergeRows(GridView gridView)
{
for (int rowIndex = gridView.Rows.Count - 2; rowIndex >= 0; rowIndex--)
{
GridViewRow row = gridView.Rows[rowIndex];
GridViewRow previousRow = gridView.Rows[rowIndex + 1];
for (int i = 0; i < row.Cells.Count; i++)
{
if (row.Cells[i].Text == previousRow.Cells[i].Text)
{
row.Cells[i].RowSpan = previousRow.Cells[i].RowSpan < 2 ? 2 :
previousRow.Cells[i].RowSpan + 1;
previousRow.Cells[i].Visible = false;
}
}
}
}
}
这是一个很好的例子,但是我之前已经试过了,结果与这个例子不一样。谢谢!我遇到了一个与@20151012类似的问题,这个问题也解决了,只是它只针对第一个单元格。因此,我取出for并将所有对I的引用替换为cell索引。
protected void gridView_PreRender(object sender, EventArgs e)
{
GridDecorator.MergeRows(gridView);
}