'GridView中2列表头合并
Sub JoinHeader(ByVal gv As GridView, ByVal dt As DataTable, ByVal column As Integer)
Dim baseCell As TableCell = New TableCell
Dim nextCell As TableCell = New TableCell
baseCell = gv.HeaderRow.Cells(column)
nextCell = gv.HeaderRow.Cells(column + 1)
baseCell.ColumnSpan = 2
gv.HeaderRow.Cells.Remove(nextCell)
End Sub
'GridView中同列相同值的表格合并
Sub JoinCells(ByVal gv As GridView, ByVal dt As DataTable, ByVal column As Integer)
Dim numRow As Integer = dt.Rows.Count
Dim baseNum As Integer = 0
Dim nextNum As Integer = 0
Dim baseCell As TableCell = New TableCell
Dim nextCell As TableCell = New TableCell
While baseNum < numRow - 1
nextNum = baseNum + 1
baseCell = gv.Rows(baseNum).Cells(column)
baseCell.Text = dt.Rows(baseNum).Item(column).ToString
While nextNum < numRow
nextCell = gv.Rows(nextNum).Cells(column)
nextCell.Text = dt.Rows(nextNum).Item(column).ToString
If baseCell.Text = nextCell.Text Then
If baseCell.RowSpan = 0 Then
baseCell.RowSpan = 2
Else
baseCell.RowSpan = baseCell.RowSpan + 1
End If
gv.Rows(nextNum).Cells.Remove(nextCell)
nextNum = nextNum + 1
Else
Exit While
End If
End While
baseNum = nextNum
End While
End Sub
这篇博客介绍了如何在GridView中实现2列表头的合并以及同列相同值的表格单元格合并。通过提供的两个Sub函数JoinHeader和JoinCells,分别实现了合并HeaderRow和合并具有相同值的表格单元格,有效优化了数据展示效果。

7045

被折叠的 条评论
为什么被折叠?



