这可能是一个简单的问题,但我搜索了很多网站,并尝试了一些我自己的想法,我似乎仍然无法找到一种简单的方法让Visual Studio替换所有的列表框项目与其他文本无关的字符串。
使用诸如:
之类的东西For Each S In ListBox1.Items
S.Replace("", "Not Blank")
Next
节目:
错误
字符串不能为零长度
这很烦人,因为实际的列表框项目不包含任何文本。 这似乎是我在使用vb.net时遇到过的最简单的事情之一。但现在看起来很难成为一个简单的命令。
答案 0 :(得分:3)
有几个问题。替换函数返回一个新值,并立即忽略它。其次,你不能像For-Each一样真正修改集合,因此For-Loop会更合适。
我认为你想要这样的东西:
For i As Integer = 0 To ListBox1.Items.Count - 1
If String.IsNullOrEmpty(ListBox1.Items(i).ToString) Then
ListBox1.Items(i) = "Not Blank"
End If
Next