Я пытаюсь изменить backcolor
.Net GridView
, когда выполняется определенное условие. Это должно быть довольно просто, но изменение цвета не происходит. Проверка отображаемого HTML-кода показывает абсолютно ничего в затронутых строках, даже если изменение текста в ссылке происходит, как и ожидалось.
Для всех gridviews
установлена тема по умолчанию, с которой я раньше не работал. Это мешает мне динамически менять цвет строки или я что-то упускаю?
Я использую .Net 3.5 и имею в своем коде следующее:
Protected Sub gvPrevious_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) Handles gvPrevious.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If currentCorrespondence.IsRetired Then //custom object, returning as expected
Dim link As LinkButton = DirectCast(e.Row.Controls(4).Controls(2), LinkButton)
link.Text = "Reinstate" //default is "retire" - GV renders this as expected
e.Row.BackColor = Drawing.Color.IndianRed //might as well not be here
End If
End If
End Sub
Из приведенного выше кода, когда я захожу в браузер и просматриваю исходный код, я ожидаю увидеть <tr style="background-color: #CD5C5C;">
для затронутых строк. Вместо этого я вижу <tr>
и <tr class="AlternateRowStyle">
(при необходимости). Я не вижу абсолютно никакого эффекта от изменения свойства BackColor
.
Я также пытался использовать e.Row.CssClass
с тем же результатом.