自动滚动文本框波涛汹涌

时间:2013-05-21 05:52:01

标签: c# winforms textbox scroll

我正在将CMD输出重定向到多行文本框,我正在尝试使用以下代码自动向下滚动:

textBox1.SelectionStart = textBox1.Text.Length;
textBox1.ScrollToCaret();
textBox1.Refresh();

然而,它看起来很不稳定,我的意思是,每当一行进来时,它将滚动条定位在文本框的顶部,然后到底部,很难描述,所以我制作了一个.gif文件发生了:http://i.imgur.com/mudqrZy.gif

有没有办法解决它?

1 个答案:

答案 0 :(得分:0)

出于同样的目的,我使用RichTextBox:

richTextBox1.AppendText(cmdOutputMsg + "\r\n");
richTextBox1.ScrollToCaret();

通过这种方式,新文本总是添加到现有文本的末尾,而使用ScrollToCaret,焦点仍然是最后插入的文本。

我认为使用普通的TextBox会以同样的方式工作。