我是一个初学者,我正在尝试一个程序,它接受项目和成本(用户输入),并将它们组织在两个列表框中。 ObjectList和PriceList。我要做的是将列表框项目转换为文本框,从而允许我将其保存在文本文件中(或至少使其更容易)。这是负责“列出”列表框的代码。
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles
Button3.Click
For i = 0 To ObjectList.SelectedItems.Count
RichTextBox1.Clear()
RichTextBox1.Text &= (ObjectList.Items(i) & " - " & PriceList.Items(i) & vbNewLine)
Next
End Sub
我的问题是文本框只显示第一行项目。 例如,如果列表框在第一行显示Computer和1000,在第二行显示Paper和3,则它只显示Computer - 1000。
答案 0 :(得分:0)
您的代码存在一些问题:
ObjectList.Items
代替ObjectList.SelectedItems
。.Count - 1
而不是.Count
,因为最后一项的索引= Items.Count - 1
(因为第一个索引为0)。请注意,ObjectList.Items(ObjectList.Count)
会抛出IndexOutOfRangeException
。RichTextBox1.Clear()
在每次迭代时清除其内容。你应该把那条线移到循环外面(上方)。所以,你的代码应该是这样的:
RichTextBox1
最后一件事:由于您使用相同的索引访问Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
RichTextBox1.Clear()
For i = 0 To ObjectList.Items.Count - 1
RichTextBox1.Text &= ObjectList.Items(i) & " - " & PriceList.Items(i) & vbNewLine
Next
End Sub
和ObjectList
的项目,因此您需要确保它们具有相同数量的项目。