vb.net 2010将文本追加到richtextbox的顶部

时间:2015-05-21 17:44:45

标签: vb.net richtextbox

我创建了一个简单的函数来将文本附加到Richtextbox。我希望这个文本总是在顶部滚动,将旧文本滚动到底部。

Private Sub BoxMessaggio(ByVal testo As String, ByVal errore As Integer)
    Me.ActiveControl = RichTextBox1
    RichTextBox1.Focus()
    If errore Then
        RichTextBox1.SelectionColor = Color.Red
    Else
        RichTextBox1.SelectionColor = Color.Black
    End If
    RichTextBox1.AppendText(testo + vbNewLine)
    RichTextBox1.SelectionStart = RichTextBox1.Text.Length
    'RichTextBox1.Select(RichTextBox1.TextLength, 0)
    RichTextBox1.ScrollToCaret()
End Sub

我以这种方式调用函数:

BoxMessaggio(Now + ": " + ex.Message, 1)

我在StackOverflow或某些论坛上尝试了很多不同的解决方案,但没有人适合我,文字总是添加在底部......

1 个答案:

答案 0 :(得分:1)

RichTextBox1.Text视为String(因为它是),调用Insert,然后将新文本放在强者的前面。

RichTextBox1.Text = RichTextBox1.Text.Insert(0, testo + vbNewLine)

滚动。不要拨打FocusScrollToCaret,它会保留在最顶层查看最近添加的文字。

相关问题