列表框和项值 - Visual Basic 2010

时间:2013-02-27 16:43:38

标签: vb.net winforms listbox

我正在使用VISUAL BASIC 2010编写一个小应用程序(它在Visual Studio 2010中打包)。

我有一个列表框设置为由Access数据库填充。该数据库有两列:1)变量名称2)描述。

作为我的问题中使用的示例,以下是我的数据示例:

变量名称描述 来自Family 1的DOG1狗种

现在,我有一个由Description列填充的列表框。这就是我需要的。我想单击一个按钮,然后根据单击的项目,在文本框中显示其对应的“描述”。这与我相信DisplayMember和ValueMember有关。我一次成功地为一件物品做了这件事。我的问题是,如何使用循环为列表框中可能选择的多个项目执行相同的任务?

这是我的代码100%用于显示一次点击一个项目。

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            TextBox1.Text = ListBox1.SelectedValue  
    End Sub

我认为以下内容可行,但事实并非如此,我不太清楚原因。

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim i As Integer
        For i = 0 To ListBox1.SelectedValue - 1    
           TextBox1.Text = ListBox1.SelectedValue(i)
        Next i
End sub

此外,如果可能,我想获取listbox1中选择的项目并在另一个列表框中显示它们的值。我之前用自己填充的简单列表框完成了这个,但是现在我正在使用值和显示成员,我似乎无法调整代码:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim i As Integer
        For i = 0 To Listbox1.SelectedItems.Count - 1
            Listbox2.Items.Add(Listbox1.SelectedItems.Item(i))
        Next i

非常感谢您的帮助!

3 个答案:

答案 0 :(得分:0)

我认为你需要 -

For i = 0 To ListBox1.SelectedValue - 1    
           TextBox1.Text &= ListBox1.SelectedValue(i)
        Next i

请参阅“&”。

还没有机会仔细检查。

答案 1 :(得分:0)

这应该是你需要的。试试吧。不要忘记将Listbox的SelectionMode属性更改为Multisimple。

TextBox1.Clear()
Listbox2.Items.Clear()
For x As Integer = 0 To ListBox1.SelectedItems.Count - 1
    TextBox1.Text += ListBox1.SelectedItems(x).ToString + " "
    ListBox2.Items.Add(ListBox1.SelectedItems(x).ToString)
Next x

答案 2 :(得分:0)

尝试从Listbox1Listbox2

查看
ListBox1.Items.Add("Dog, Cat, Fish, Bear, Bird, Goat")

Dim myArr() As String = ListBox1.Items.OfType(Of String)().ToArray()
ListBox2.DataSource = myArr