Labels

Tuesday, April 29, 2008

Insert Row into Gridview without modifiying datasource

Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter)
If _SortedFlag Then

Dim table As Table = DirectCast(grid1.Controls(0), Table)

Dim htLookUp As New Hashtable

For Each row As GridViewRow In grid1.Rows

Dim realIndex As Integer = table.Rows.GetRowIndex(row)

Dim text As String = row.Cells(_SortColumnIndex).Text

If Not htLookUp.ContainsKey(text) Then
htLookUp.Add(text, Nothing)

Dim newHeaderRow As New GridViewRow(realIndex, realIndex, DataControlRowType.DataRow, DataControlRowState.Normal)
Dim newCell As New TableCell()
newHeaderRow.Cells.Add(newCell)
newCell.ColumnSpan = grid1.Columns.Count
newCell.BackColor = Drawing.Color.Gray
newCell.ForeColor = Drawing.Color.White
newCell.Font.Bold = True
newCell.Text = _SortColumnHeader & " : " & text

table.Controls.AddAt(realIndex, newHeaderRow)

End If
Next

End If
MyBase.Render(writer)
End Sub

No comments:

Post a Comment