我有一个几行的网格。在满足某种条件时,我需要改变满足该条件的行的背景颜色。我在网格的rowdatabound事件中执行此操作,但在页面回发期间它会丢失颜色。我该如何解决这个问题? 我的代码是这样的。
If (e.Row.RowType = DataControlRowType.DataRow) Then
Dim lblShowBreak As System.Web.UI.WebControls.Label = e.row.FindControl("lblShowBreak")
Dim lblIsBreak As System.Web.UI.WebControls.Label = e.row.FindControl("lblIsBreak")
If Trim(lblIsBreak.Text) = "Y" Then
e.Row.BackColor = System.Drawing.Color.Black
End If
End If
答案 0 :(得分:0)
我想,你每次都可以在OnPreRender方法中标记e.Row.BackColor = System.Drawing.Color.Black。在这种情况下,状态将始终保存。
答案 1 :(得分:0)
您必须使用RowDataBound
的{{1}}事件
Grid View
你必须使用类似的东西。
希望你理解并为你工作。
答案 2 :(得分:0)
我已经解决了这个问题。我的修复方法如下。
If Trim(lblIsBreak.Text) = "Y" Then
lblShowBreak.Visible = True
For i = 0 To gvTimeTable.Columns.Count - 1
e.Row.Cells(i).BackColor = System.Drawing.Color.LightGray
Next
End If