RichTextBox最大显示行数、实现文本自动滚动
2022.2.28记录
RichTextBox设置最大显示行数如下
设置 RichTextBox 的 TextChanged 事件
方法一
private void RichTextBox1_TextChanged(object sender, EventArgs e)
{
int maxLine = 100;//最大显示行数100行
if (richTextBox1.Lines.Length > maxLine)
{
int curLines = richTextBox1.Lines.Length - maxLine;
string[] lines = richTextBox1.Lines;
Array.Copy(lines, curLines, lines, 0, maxLine);
Array.Resize(ref lines, maxLine);
richTextBox1.Lines = lines;
}
}
方法二
private void RichTextBox1_TextChanged(object sender, EventArgs e)
{
int maxLine = 100;//最大显示行数100行
if (richTextBox1.Lines.Length > maxLine)
{
richTextBox1.Text = richTextBox1.Text.Substring(richTextBox1.Lines[0].Length + 1);
}
}
RichTextBox实现自动滚动并显示最新文本
private void SetRichboxText(object text)
{
//richTextBox1.Focus(); //使文本框获取焦点 (如果子线程循环执行0.几秒的速度,不建议写这个参数,否则主线程其它控件获取不到焦点,长时间运行可能会出现界面UI卡死的情况)
this.richTextBox1.AppendText(text.ToString()); //( .AppendText 向文本框的当前文本追加文本,显示出来是多行文本)
//this.richTextBox1.Text(text.ToString()); //( .Text 显示出来是单行文本,根据需要选择.AppendText或者.Text)
//richTextBox1.Select(richTextBox1.Text.Length, 0); //设置光标的位置到文本尾
richTextBox1.ScrollToCaret(); //滚动到控件光标处
}
* 注意 如果需要 设置richTextBox的ReadOnly属性为True
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构