html表forecolor背后的ASP.NET VB代码

时间:2011-02-03 11:36:11

标签: asp.net vb.net

抱歉,我是.net的新手,并且学习这可能非常简单。

我有一个带有html表的页面并且正在从后面的代码访问它并根据数据库中的值更改显示的内容,我已设法更改显示的文本和背景颜色但我正在努力更改行或单元格字体/前置颜色。

我知道我的代码可能不是最有效的方式,但正如我说我正在学习。

提前致谢 - J。

'Iterate through the rows of the table.
    For i = 0 To Table1.Rows.Count - 1

        'Iterate through the cells of a row.
        For j = 0 To Table1.Rows(i).Cells.Count - 1

            If i = 0 Then

                If (ds.Tables.Count > 0) And (ds.Tables(0).Rows.Count > 0) Then
                    Table1.Rows(i).BgColor = "#f4f4f4"
                Else
                    Table1.Rows(i).BgColor = "#ffffff"
                End If

                If j = 0 Then
                    If (ds.Tables.Count > 0) And (ds.Tables(0).Rows.Count > 0) Then
                        Table1.Rows(i).Cells(j).InnerHtml = "Personal"
                    End If
                End If

                If j = 1 Then
                    If (ds.Tables.Count > 0) And (ds.Tables(0).Rows.Count > 0) Then
                        Table1.Rows(i).Cells(j).InnerHtml = "Section complete"
                    Else
                        Table1.Rows(i).Cells(j).InnerHtml = "Please complete this section"
                    End If
                End If

                If j = 2 Then
                    If (ds.Tables.Count > 0) And (ds.Tables(0).Rows.Count > 0) Then
                        Table1.Rows(i).Cells(j).InnerHtml = "Tick"
                    Else
                        Table1.Rows(i).Cells(j).InnerHtml = "X"
                    End If
                End If

                If j = 3 Then
                    If (ds.Tables.Count > 0) And (ds.Tables(0).Rows.Count > 0) Then
                        Table1.Rows(i).Cells(j).InnerHtml = "<input id=""Button1"" type=""button"" value=""Edit"" />"
                    Else
                        Table1.Rows(i).Cells(j).InnerHtml = "<input id=""Button1"" type=""button"" value=""Add"" />"
                    End If
                End If

            End If

4 个答案:

答案 0 :(得分:1)

您可以使用Row元素的CSSClass属性:

Table1.Rows(i).CssClass = "YourClassName"

或者您可以设置Style属性:

Table1.Rows(i).Attributes("style") = "color:red;"

答案 1 :(得分:1)

您应该能够使用TableRow或TableCell的ForeColor属性来设置文本的颜色。

但是,如果行或单元格的颜色是预先定义的,例如您可能有一行超出限制或具有红色背景和白色文本的无效值,更好的方法是在您的css文件中声明一个样式

tr.warning td {
    background:#f00;
    color:#fff;
}

然后为TableRow分配CssClass警告

Table1.Rows(i).CssClass = "warning"

这样做的一个真正好处是,如果你想改变风格,你只需要修改你的CSS文件或样式声明

答案 2 :(得分:1)

您可以在行或单元格的Style属性中添加样式信息 这是

Table1.Rows(i).Style.Add("color", "#035E8B)

或细胞

Table1.Rows(i).Cells(j).Style.Add("color", "#035E8B)

Style Attribute

答案 3 :(得分:0)

你必须实现RowDataBound事件,该事件在每行被数据绑定后触发,然后根据指定的条件着色。

请参阅我的回答HERE

编辑:嘿伙计们,请注意,他说代码隐藏所以这比C#更喜欢C#/ VB。