在TextBox中编辑多行

问题描述 投票:2回答:1

我希望我的程序将一个字符串输入到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"
vb.net multiline multilinestring
1个回答
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
© www.soinside.com 2019 - 2024. All rights reserved.