【问题标题】:how to Add 3 listboxes items into one listbox如何将 3 个列表框项目添加到一个列表框中
【发布时间】:2015-12-15 13:24:42
【问题描述】:

我正在使用 vb.net 表单。

我有 3 个列表框,每个列表框包含许多项目(listbox1、listbox2、listbox3) 和另一个空列表框(listbox4) 我试图将前三个列表框项添加到第四个列表框

ex: ) listbox1 第一个项目是 'A' , listbox2 第一个项目是 'b' , listbox3 第一个项目是 'c' 现在 listbox4 第一项必须是“Abc”

问题是我没有工作,但要保持循环项目。 这是我的代码:

For i = 1 To ListBox1.Items.Count - 1

       For j = i To ListBox2.Items.Count - 1

           For k = j To ListBox3.Items.Count - 1

               ListBox4.Items.Add(ListBox1.Items(j).ToString + ListBox2.Items(j).ToString + ListBox3.Items(k).ToString)

               Exit For
           Next
       Next
   Next

【问题讨论】:

    标签: vb.net listbox


    【解决方案1】:

    你已经嵌套了循环。这意味着内循环在外循环的每个循环处重复。例如。如果三个列表框有 3、4 和 6 个元素,最里面的循环将循环 3 x 4 x 6 = 72 次!

    只做一个循环:

    Dim n As Integer = _
        Math.Min(ListBox1.Items.Count, Math.Min(ListBox2.Items.Count, ListBox3.Items.Count))
    
    For i As Integer = 0 To n - 1
        ListBox4.Items.Add( _
            ListBox1.Items(i).ToString + _
            ListBox2.Items(i).ToString + _
            ListBox3.Items(i).ToString)
    Next
    

    【讨论】:

    • 先生,请问您是否想在 1 个列表框中添加超过 3 个列表框,例如在 1 个列表框中添加 5 或 6 个列表框?非常感谢@Oliver Jacot-descombes
    • 我不太明白问题出在哪里。如何为更多列表框扩展示例似乎非常明显和直接。如果您知道列表框的项目数都相同,则不需要带有Math.Min 的部分。这只是取所有列表框的最小计数,以防它们具有不同的计数。相反,只需从其中一个列表框中进行计数:Dim n As Integer = ListBox1.Items.Count。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多