我尝试了两种不同的代码来从列表框中获取最大的数字,并且两者都给我一个错误,指出从类型ListViewItem到类型Integer的转换无效。任何帮助将不胜感激。
Dim CurrentHighest As Integer = 0
For Each item As Integer In listpgrades.Items
If item > CurrentHighest Then CurrentHighest = item
Next
txtHSP.Text = CurrentHighest.ToString
Dim max As Integer = 0
Dim result = ""
For Each s As String In listpgrades.Items
Dim x = CInt(s.Substring((s.LastIndexOf(":") + 2)))
If max < x Then
max = x
result = s
End If
Next
txtHSP.Text = result
答案 0 :(得分:1)
假设我们正在处理ListView ... 首先,您的For Each循环项不能是Integer和ListViewItem。 listpgrades.Items是ListViewItems的集合。
Dim CurrentHighest As Integer = 0
For Each item As ListViewItem In ListView1.Items
If CInt(item.Text) > CurrentHighest Then CurrentHighest = CInt(item.Text)
Next
TextBox1.Text = CurrentHighest.ToString
如果我们在谈论ListBox。
Dim CurrentHighest As Integer = 0
For Each item In ListBox1.Items
If CInt(item) > CurrentHighest Then CurrentHighest = CInt(item)
Next
TextBox1.Text = CurrentHighest.ToString