使用循环更改TextBox中的文本

时间:2016-03-01 20:15:45

标签: vb.net textbox rename cycle lines

我需要使用TextBox循环更改For中的某些行。问题是当我运行以下代码时,我得到一个IndexOfOfRangeException

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    For counter As Integer = 0 To TextBox1.Lines.Length = -1
        TextBox1.Text = "some text" & "(" & """" & TextBox1.Lines(counter) & """" & ")" & vbCrLf
    Next
End Sub

1 个答案:

答案 0 :(得分:0)

第一

For counter As Integer = 0 To TextBox1.Lines.Length = -1

应该是

For counter As Integer = 0 To TextBox1.Lines.Length -1

否则它会将To之后的部分评估为布尔值。

第二

TextBox1.Text = "some text" & "(" & """" & TextBox1.Lines(counter) & """" & ")" & vbCrLf

您正在将文本框的完整文本设置为此新字符串,而不是仅更改一行。

执行此任务的最简单方法是将文本框的行复制到字符串数组中,更改该数组中的字符串并将其复制回来。

Dim tempArray as String()
tempArray = TextBox1.Lines
For counter = 0 to tempArray.Length -1
    tempArray(counter) = "some text" & "(" & """" & tempArray(counter) & """" & ")" & vbCrLf
Next
TextBox1.Lines = tempArray