首页 > 解决方案 > 如何将项目添加到同一行的列表框中(VB)

问题描述

我想让它每次通过 for 循环时,它将值放在同一行,但我不知道如何。有人可以帮忙吗?

编辑:我正在尝试为分配设置地址簿类型代码,并且我想显示输出,因此所有 J 输出都在列表框的同一行上。

下面是声明每个 J 数是多少的代码:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    i += 1
    j = 0
    AddressArray(i, j) = TxtFirstName.Text   
    j += 1

    AddressArray(i, j) = TxtLastName.Text 

    j += 1

    If TxtHomePhone.Text = "" Then              
        AddressArray(i, j) = "N/A"
        j += 1
    Else
        AddressArray(i, j) = TxtHomePhone.Text
        j += 1
    End If
    If TxtMobilePhone.Text = "" Then           
        AddressArray(i, j) = "N/A"
        j += 1
    Else
        AddressArray(i, j) = TxtMobilePhone.Text
        j += 1
    End If
    AddressArray(i, j) = TxtHomeNumb.Text       
    j += 1
    AddressArray(i, j) = TxtStName.Text         
    j += 1

    AddressArray(i, j) = TxtSuburb.Text    

    For j = 0 To 6
        LstAddresses.Items.Add(AddressArray(i, j))

    Next
End Sub      

for循环是将其打印出来,我将在表单上给出输出的图片,以给出我想要的和给出的:(我已经使用streamreader从文件中读取,作为列表框的输入作为测试数据)

申请表格

标签: vb.net

解决方案


如果我了解您要做什么,您应该将相关数据连接成一个字符串,然后将该字符串添加到您的 ListBox ..

Dim data As String = ""
Dim loopEnd As Integer = 6
For j As Integer = 0 To loopEnd
    If j < loopEnd Then
        data = data & AddressArray(i, j) & ", "
    Else
        data = data & AddressArray(i, j)
    End If
Next
LstAddresses.Items.Add(data)

不要忘记在字符串中添加自己的逗​​号和空格

我建议不要将数据存储在数组中,而是定义一个具有相关属性的地址类,并且只使用一维数组。如果您决定更改地址数据中的字段数,它将使代码不易出错并且更易于维护。

此外,如果AddressArray在第一维中包含名称或 ID 之类的东西,请将其包含在您的新Address类中,而不是使用数组,只需使用 aList (Of Address)这将使编写代码和维护变得更加容易。


推荐阅读