如何在 vb.net 中解决系统无效广播异常



嗯,我有这段代码。我想将文本框的内容存储到字符串数组中(我更喜欢使用字符串列表(,然后将数组的每个元素打印到另一个文本框中。但是,当我尝试编译此代码时,我收到以下错误消息: System.InvalidCastException:"从字符串 " 到 int 的转换无效" 格式异常:输入字符串格式不正确

有什么建议吗?

Public Class NewUser
Dim textUser As String
Dim strUserName As New List(Of String)
Private Sub btnCreateUser_Click(sender As Object, e As EventArgs) Handles btnCreateUser.Click
textUser = txtNewUser.Text
If textUser <> "" Then
strUserName.Add(textUser)
txtNewUser.Clear()
Else
MsgBox("Username or Password is missing. Try again!")
End If
For Each i As String In strUserName
TextBox1.Text = String.Join(",", strUserName(i))
Next i
End Sub
End Class

我根本不清楚你在这里想做什么:

For Each i As String In strUserName
TextBox1.Text = String.Join(",", strUserName(i))
Next i

对于初学者来说,i是一个字符串,你试图像整数一样使用它作为数组的索引。 但即使你要把它更正成这样:

String.Join(",", i)

这仍然试图连接一个字符串。 这可能也不会编译,但即使它这样做了,它在逻辑上也不会做任何事情。 除此之外,每次循环迭代时都会覆盖TextBox1.Text,因此它最多只会等于数组中的最后一个值。

如果您只是尝试将数组联接到该文本框中,则为一行:

TextBox1.Text = String.Join(",", strUserName)

无需循环。

相关内容

最新更新