3

我有一个包含项目列表的列表框,我想知道如何创建一个处理程序,该处理程序可以在事件发生时迭代列表框。
我有以下代码将文件读入列表框。

Private Sub Load_File_To_ListBox(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Load_File_To_ListBox.Click
    Dim r As New IO.StreamReader("C:\Users\resu\Desktop\test.txt")
    While (r.Peek() > -1)
        lb1.Items.Add(r.ReadLine)
    End While
    r.Close()
End Sub

这是我的事件处理程序代码:

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    TextBox1.Text = " "
    TextBox1.Text &= ListBox1.SelectedItems.Item(i).ToString
    i = i + 1
End Sub

i被声明为全局变量以跟踪ListBox. 我想要的是从 中读取下一项Listbox并将其放入TextBox每当单击 Button2 时。

请帮助我修改我的代码以使其正常工作。

4

1 回答 1

3

如果我理解正确,您的问题在于以下代码行:

'This line of code looks at all of the items that have been 
'selected in the list box, and out of all of the selected 
'items it will select the item at index i.
TextBox1.Text &= ListBox1.SelectedItems.Item(i).ToString

因为代码只查看选定的项目而不是所有项目,所以代码的行为与您预期的不同。相反,请使用以下代码行:

TextBox1.Text &= ListBox1.Items(i).ToString()
于 2013-04-20T10:27:35.237 回答