在TextBox中编辑多行

时间:2017-12-30 23:20:03

标签: vb.net multiline multilinestring

我希望我的程序将一个字符串输入到TextBox中,然后将其转换为模式。这是我目前的代码:

Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
    For Each line As String In TextBox1.Lines
        TextBox1.Text.Insert(0, """")
        TextBox1.Text.Insert((TextBox1.Text.Length), """")
        TextBox2.AppendText(line & vbCrLf)
    Next
End Sub

我不希望对整个TextBox进行这些更改,而是对每条单独的行进行。所以

1111
1111

会变成

"1111"
"1111"

而不是

"1111
1111"

1 个答案:

答案 0 :(得分:1)

你不能为每个人做好准备,所以你必须遍历你的Lines系列。更容易向后执行此操作,因为插入文本将更改索引位置等等,因此请尝试这种方式:

For i As Integer = TextBox1.Lines.Count - 1 To 0 Step -1
  If TextBox1.Lines(i).Length > 0 Then
    Dim startPos As Integer = TextBox1.GetFirstCharIndexFromLine(i)
    TextBox1.Select(startPos, TextBox1.Lines(i).Length)
    TextBox1.SelectedText = String.Format("{0}{1}{2}", """", TextBox1.Lines(i), """")
  End If
Next