我有一个在ASP:DataGrid
其中显示记录的记录。记录从 SQL Server 2008 R2 数据库中提取到SqlAdapter
用于填充 aDataSet
并且绑定到ASP:DataGrid
可以跨越多个页面,ASP:DataGrid
并且每页限制为 20 条记录。
其中一列是要处理条目的剩余天数的值。我想突出显示任何值为 0 - 1 的红色和任何值为 2 - 5 的预言。我尝试过的方法是将函数调用设置OnItemDataBound
为ASP:DataGrid
Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound
If (e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem) Then
Select Case CType(e.Item.Cells(5).Text, Integer)
Case 0 To 1
e.Item.BackColor = Drawing.Color.Red
Case 2 To 5
e.Item.BackColor = Drawing.Color.Orange
End Select
End If
End Sub
这在页面首次加载时完美运行。如果有超过一页的记录,并且您尝试移至下一页,则根本不会加载任何记录,实际上ASP:DataGrid
根本不会显示。如果我再次删除这些OnItemDataBound
功能ASP:DataGrid
(尽管没有突出显示)。