将多个列表框项添加到一个列表框中

时间:2015-12-16 13:07:44

标签: vb.net listbox

我正在使用vb.net表单。

我有8个列表框(listbox1,listbox2,listbox3 ..),每个列表框包含许多项目和另一个空列表框(listbox10)。我正在尝试将第一个列表框项添加到listbox10

ex:)listbox1第一项是'A',listbox2第一项是'b',listbox3第一项是'c'......等等。现在listbox10第一项必须是“Abc ...”

问题是我只能在列表框10中添加3个列表框 但我希望所有8个列表框都包含在循环中。

这是我的代码

noui

1 个答案:

答案 0 :(得分:4)

创建您要处理的所有列表框中的List<Listbox>。 然后,使用Linq,很容易实现您的目标

Dim controls = new List(Of Listbox)() From _
      { listbox1, listbox2, listbox3, ....etc.... }
Dim minCount = controls.Min(Function(x) x.Items.Count)
for x = 0 to minCount-1
    listbox10.Items.Add(string.Join(" ", controls.Select(Function(lb) lb.Items(x).ToString)))
Next

当然,如果所有列表框具有相同数量的项目,那么查找具有较少数量项目的列表框的计算是无用的,您可以使用任何列表框的Items.Count替换它(但是,在防御性编程中,我会离开它)