您好,我无法使此代码正常工作。我试图从多行文本框中加载项目,然后在CheckedListBox中搜索它们,然后检查是否找到它们。
我的CheckedListBox有4个项目。 红色 绿色 黑色 蓝色
我的文本框有2个项目。 绿色 蓝色
我的问题是,当我使用以下代码时,它返回1(绿色),0(红色)和3(蓝色)。它不应返回0(红色)
为什么这样做,如何阻止它返回0?
我尝试将TextBox2.Text.Split()更改为TextBox2.Text.Split(vbNewLine),但这不起作用。
谢谢!
Public Class Form1
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
For Each strLine As String In TextBox2.Text.Split()
Dim i As Integer = CheckedListBox1.FindString(strLine)
CheckedListBox1.SelectedIndex = i
CheckedListBox1.SetItemChecked(i, True)
MsgBox(i)
Next
End Sub
结束班级
答案 0 :(得分:0)
我自己解决了这个问题。我需要删除换行符。我是通过以下代码做到的。
Public Class Form1
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
For Each strLine As String In TextBox2.Text.Split(vbNewLine)
Dim i As Integer = CheckedListBox1.FindString(strLine)
CheckedListBox1.SelectedIndex = i
CheckedListBox1.SetItemChecked(i, True)
Next
End Sub
Private Sub TextBox2_TextChanged(sender As Object, e As EventArgs) Handles TextBox2.TextChanged
TextBox2.Text = Replace(TextBox2.Text, vbLf, "")
End Sub
结束班级