一部の列の行を結合してグリッド ビューにデータを表示する必要があります。以下の定義された形式でグリッド ビューを準備するのを手伝ってください。
また、元のデータはデータベースから取得され、次の形式になっています。
このタスクを動的かつ効率的に実行するための最良の方法を見つけるのを手伝ってください。
一部の列の行を結合してグリッド ビューにデータを表示する必要があります。以下の定義された形式でグリッド ビューを準備するのを手伝ってください。
また、元のデータはデータベースから取得され、次の形式になっています。
このタスクを動的かつ効率的に実行するための最良の方法を見つけるのを手伝ってください。
を使用する必要がありますRowSpan
。
次のコードを参照してください。
protected void GridView1_DataBound1(object sender, EventArgs e)
{
for (int rowIndex = GridView1.Rows.Count - 2;
rowIndex >= 0; rowIndex--)
{
GridViewRow gvRow = GridView1.Rows[rowIndex];
GridViewRow gvPreviousRow = GridView1.Rows[rowIndex + 1];
for (int cellCount = 0; cellCount < gvRow.Cells.Count;
cellCount++)
{
if (gvRow.Cells[cellCount].Text ==
gvPreviousRow.Cells[cellCount].Text)
{
if (gvPreviousRow.Cells[cellCount].RowSpan < 2)
{
gvRow.Cells[cellCount].RowSpan = 2;
}
else
{
gvRow.Cells[cellCount].RowSpan =
gvPreviousRow.Cells[cellCount].RowSpan + 1;
}
gvPreviousRow.Cells[cellCount].Visible = false;
}
}
}
参考:
https://sites.google.com/site/learning6329/asp-net/gridview-merge-cells
問題の絵の例: