更改listview vb.net的颜色

时间:2014-09-18 08:06:40

标签: vb.net

我创建了2列。学生姓名和分数。 我想将第2列的颜色更改为红色,这是“得分”低于89%的分数。下面是我的代码:但每次获得100%的值时,颜色仍会变为红色。请帮帮我们。

  For Each lvi As ListViewItem In Me.ListView1.Items
        Dim va As String = 89%

        If lvi.SubItems(2).Text < va Then

            lvi.UseItemStyleForSubItems = False
            lvi.SubItems(2).ForeColor = Color.Red
        End If

    Next

1 个答案:

答案 0 :(得分:0)

使用整数比较并确保列内容不是空字符串 试试这个:

For Each lvi As ListViewItem In Me.ListView1.Items

    Dim va As integer= 89
    Dim tmpColumnValue as string

 If (not string.isNullorEmpty(lvi.SubItems(2).Text)) then
    tmpColumnValue =lvi.SubItems(2).Text.TrimEnd('%')

    If (not string.isNullorEmpty(tmpColumnValue)) and (cInt(tmpColumnValue )) < va Then
        lvi.UseItemStyleForSubItems = False
        lvi.SubItems(2).ForeColor = Color.Red
    End If
 end if

下一步