Arrays 无法输出阵列

Arrays 无法输出阵列,arrays,vb.net,winforms,Arrays,Vb.net,Winforms,我被要求在一个标签中输出两个数组我的代码如下: Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click If block = True And counter <= 23 Then Try array1(counter) = TextBox1.Text Dim txtbox2 As String = CInt(TextBox2.Text)

我被要求在一个标签中输出两个数组我的代码如下:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click    
  If block = True And counter <= 23 Then
    Try
      array1(counter) = TextBox1.Text
      Dim txtbox2 As String = CInt(TextBox2.Text)
      array2(counter) = txtbox2
      counter += 1
    Catch ex As Exception
      TextBox2.Text = ""
    End Try
End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
  Dim arr1 As String
  Dim arr2 As String
  Dim result As String
  For Each values In array1
    arr1 = values
  Next

  For Each values In array2
    arr2 = values.ToString
  Next
  Label3.Text = String.Join("     ", arr1, arr2)
End Sub
Private子按钮1\u单击(发送者作为对象,e作为事件参数)处理按钮1。单击

如果block=True且counter您可能应该使用
List(Of String)
而不是数组,但是既然如此,您的String.Join正在尝试合并两个数组,但它并不是这样工作的

尝试将字符串添加到(字符串的)列表中,然后将整个输出转换回单个数组:

Dim results As New List(Of String)(array1)
results.AddRange(array2)
Label3.Text = String.Join(" ", results.ToArray)
如果第二个数组是整数数组,则必须将它们转换为字符串数组:

Dim results As New List(Of String)(array1)
results.AddRange(array2.Select(Function(x) x.ToString))
Label3.Text = String.Join(" ", results.ToArray)

您可能应该使用
List(Of String)
而不是数组,但是这样说的话,您的String.Join正在尝试合并两个数组,它并不是这样工作的

尝试将字符串添加到(字符串的)列表中,然后将整个输出转换回单个数组:

Dim results As New List(Of String)(array1)
results.AddRange(array2)
Label3.Text = String.Join(" ", results.ToArray)
如果第二个数组是整数数组,则必须将它们转换为字符串数组:

Dim results As New List(Of String)(array1)
results.AddRange(array2.Select(Function(x) x.ToString))
Label3.Text = String.Join(" ", results.ToArray)

除非第一个按钮被多次单击,否则只有一个值;在第二次单击的循环中,您将覆盖任何以前的值
arr2=values。ToString
最后它将只是最后一个值(在这两种情况下)。如果设置断点并调试代码,您将学到很多东西。你应该删除Try/Catch,这样当出现异常时,你会被告知并修复代码好的,我会试试。感谢第一个按钮被多次点击,只有一个值;在第二次单击的循环中,您将覆盖任何以前的值
arr2=values。ToString
最后它将只是最后一个值(在这两种情况下)。如果设置断点并调试代码,您将学到很多东西。你应该删除Try/Catch,这样当出现异常时,你会被告知并修复代码好的,我会试试。谢谢,我想这会管用,但我的第二个数组是整数,所以它不会添加到(字符串的)列表@Xtremfabz。您没有很好地记录数组。您发布的代码到处都不匹配:
Dim txtbox2 As String=CInt(TextBox2.Text)
???是的,很抱歉我是新来的,也不习惯vb x)textbox2是用于array2的,而array2是integer@Xtremfabz我更新了答案以适应第二个数组的整数。我认为这会起作用,但我的第二个数组是一个整数,因此它不会添加到(字符串的)列表@Xtremfabz。您没有很好地记录数组。您发布的代码到处都不匹配:
Dim txtbox2 As String=CInt(TextBox2.Text)
??是的,很抱歉我是新来的,也不习惯vb x)TextBox2是用于array2的,它是integer@Xtremfabz我更新了答案以适应第二个数组整数。