c# - 富文本框在写入新数据时滚动到底部

标签 c# winforms richtextbox

我的程序调用 Java,然后将标准输出重定向到 RichTextBox。我的问题是每次写入数据时,垂直滚动条总是停留在框的顶部。

即使您滚动到底部,一旦写入新数据,它就会回到顶部。我想要相反的东西。

所以当写入新数据时,它会停留在底部。我该怎么做?

最佳答案

是的,您可以使用 ScrollToCaret()方法:

// bind this method to its TextChanged event handler:
// richTextBox.TextChanged += richTextBox_TextChanged;
private void richTextBox_TextChanged(object sender, EventArgs e) {
   // set the current caret position to the end
   richTextBox.SelectionStart = richTextBox.Text.Length;
   // scroll it automatically
   richTextBox.ScrollToCaret();
}

关于c# - 富文本框在写入新数据时滚动到底部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9416608/

相关文章:

c# - 带有 .NET Core 的 NLog/SQLite

C# WPF 将 richtextbox 中粘贴的 BitmapImage 转换为二进制

vb.net - 适用于 vb.net 的高效、无闪烁语法荧光笔,其工作效果与 IDE 中的语法荧光笔一样好

C# 数字对象之间的加法

c# - Entity Framework 将聚簇索引与主键分开

c# - 如何在不创建新实例的情况下进行隐式转换?

c# - 如何从 C# 中的特定目录加载图像?

c# - 是什么阻止了互连的 Winforms 控件之间的无限循环?

c# - 如何从 WPF 用户控件获取托管 WinForm 的实例?

c# - 如何在 RichTextBox 中捕获 Ctrl-Z 击键