列排序的ASP.NET GridView BackColor更新
本文关键字:GridView BackColor 更新 NET ASP 排序 | 更新日期: 2023-09-27 18:20:48
我有一个GridView
绑定到SQL数据库中的一个表,以便在登录到我的网站后加载到页面上。
首次加载带有GridView
的页面时。我遍历表上的行,并根据其"状态"列更改每行的BackColor
(即,如果它是"未完成",则将其变为红色或绿色,如果它为"完成")。当您按另一列对表进行排序时,BackColor
就会消失。
我尝试运行相同的函数来遍历行并更改GridView1_Sorted
事件上的所有BackColors
,但表保持不变,没有任何颜色更改。使用GridView1_Load
事件也是如此。然而,在中添加一个按钮并将该按钮的单击绑定到相同的格式代码,可以使我在排序后应用BackColors
。
这告诉我可能误解了Sorted
事件的工作方式。有人能告诉我如何正确设置GridView
,这样我就可以按某列排序,并且仍然可以重新应用我的BackColor
格式吗?
试试这样的
If e.Row.RowType = DataControlRowType.DataRow Then
Dim stStatus As String = e.Row.Cells(1).Text ' INDEX OF YOUR STATUS COLUMN
For Each cell As TableCell In e.Row.Cells
If stStatus = "Incomplete" Then
cell.BackColor = Color.Red
Else If stStatus = "Complete" Then
cell.BackColor = Color.Green
End If
Next
End If
将此代码放入GridView
的RowDataBound
事件