gridview
public
static
void
GroupRows(GridView GridView1,
int
cellNum)
{
int i = 0 , rowSpanNum = 1 ;
while (i < GridView1.Rows.Count - 1 )
{
GridViewRow gvr = GridView1.Rows[i];
for ( ++ i; i < GridView1.Rows.Count; i ++ )
{
GridViewRow gvrNext = GridView1.Rows[i];
if (gvr.Cells[cellNum].Text == gvrNext.Cells[cellNum].Text)
{
gvrNext.Cells[cellNum].Visible = false ;
rowSpanNum ++ ;
}
else
{
gvr.Cells[cellNum].RowSpan = rowSpanNum;
rowSpanNum = 1 ;
break ;
}
if (i == GridView1.Rows.Count - 1 )
{
gvr.Cells[cellNum].RowSpan = rowSpanNum;
}
}
}
}
{
int i = 0 , rowSpanNum = 1 ;
while (i < GridView1.Rows.Count - 1 )
{
GridViewRow gvr = GridView1.Rows[i];
for ( ++ i; i < GridView1.Rows.Count; i ++ )
{
GridViewRow gvrNext = GridView1.Rows[i];
if (gvr.Cells[cellNum].Text == gvrNext.Cells[cellNum].Text)
{
gvrNext.Cells[cellNum].Visible = false ;
rowSpanNum ++ ;
}
else
{
gvr.Cells[cellNum].RowSpan = rowSpanNum;
rowSpanNum = 1 ;
break ;
}
if (i == GridView1.Rows.Count - 1 )
{
gvr.Cells[cellNum].RowSpan = rowSpanNum;
}
}
}
}
逻辑:下一行和上一行比较,如果相同,则隐藏。
问题:如果gridview没有安这一列排序,则有可能合并不完全。