A common scenario while using Infragistics WebDataGrid is to have an unbound column, whose cell’s value is determined at runtime in InitializeRow
event, something like
Private Sub xmyGrid_InitializeRow(ByVal sender As Object, ByVal e As GridControls.RowEventArgs) Handles xmyGrid.InitializeRow '... some code e.Row.Items(0).Value = SomeCalculatedData '... some more code End Sub
This works fine if you bind the grid to a small data set (and you should!) But if, due to circumstances out of your control, you bind it to a dataset with tens of thousand of records you might be screwed. Even if you enable paging (and you most definitely should!) you may find yourself living in a shotgun shack in a situation that changing page takes forever and eventually crashes. If you do – change the above line to
e.Row.Items(0).Text = SomeCalculatedData
note using of .Text
property, which is String, instead of .Value
which is Object. Since you’re assigning the calculated data for presentation only – no need to change underlying value – and this makes all the difference.