public static void CellTogether( int cellIndex, ref GridView gvTemp) ... { int i = 0; int rowSpanNum = 1; while (i < gvTemp.Rows.Count - 1) ...{ GridViewRow gvr = gvTemp.Rows[i]; for (++i; i < gvTemp.Rows.Count; i++) ...{ GridViewRow gvrNext = gvTemp.Rows[i]; if (gvr.Cells[cellIndex].Text == gvrNext.Cells[cellIndex].Text) ...{ // 前1つ列の内容が一致かどうか if ((cellIndex >= 1) && (gvr.Cells[cellIndex - 1].Text != gvrNext.Cells[cellIndex - 1].Text)) ...{ gvr.Cells[cellIndex].RowSpan = rowSpanNum; rowSpanNum = 1; break; } else ...{ gvrNext.Cells[cellIndex].Visible = false; rowSpanNum++; } } else ...{ gvr.Cells[cellIndex].RowSpan = rowSpanNum; rowSpanNum = 1; break; } if (i == gvTemp.Rows.Count - 1) ...{ gvr.Cells[cellIndex].RowSpan = rowSpanNum; } } } }