在 TextBox 中编辑多行

Editing multiple lines in TextBox

我希望我的程序将输入到 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"

您将无法对每个它进行 for-each,因此您将不得不遍历您的 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