选择新页面时丢失自定义gridview字体

时间:2014-07-23 22:26:27

标签: asp.net

我正在使用此代码根据值更改单个列的网格视图中的字体颜色:

       For Each row As GridViewRow In gvSearch.Rows
           If row.Cells(8).Text.Trim = "Used" Then
               row.Cells(8).CssClass = "CautionRow"
           End If
        Next

此代码在gridview数据绑定之后运行。但是,gridview具有可用页面,此代码仅更改网格视图的第一页。我可以通过不允许页面来解决问题,但这是一个俗气的解决方案。任何建议?

2 个答案:

答案 0 :(得分:0)

注册PageIndexChanging活动

onpageindexchanging="gvSearch_PageIndexChanging"

然后在事件处理程序中执行字体更改逻辑,如

Sub gvSearch_PageIndexChanging(ByVal sender As Object, ByVal e As GridViewPageEventArgs)
{
         For Each row As GridViewRow In gvSearch.Rows
           If row.Cells(8).Text.Trim = "Used" Then
               row.Cells(8).CssClass = "CautionRow"
           End If
        Next
}

答案 1 :(得分:0)

在我的同事程序员的帮助下,实际上找到了我自己的答案。这是真正有用的:

在样式表(.css)中添加:

.CautionRow {
    color: red;
}

...然后将其添加到您的代码中:

Protected Sub gvSearch_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViwRowEventArgs) Handles gvSearch.RowDatabound

    If e.Row.Cells.Count > 1 Then
        If e.Row.Cells(8).Text.ToString.ToLower.Trim = "used" Then
            e.Row.Cells(8).CssClass = "CautionRow"
        End If
    End If
End Sub