c# RichTextbox添加行号

使用另一个RichTextBox放在要添加行号的左边

使用以下代码

csharp 复制代码
		//uiRichTextBox1为右侧文本框,uiRichTextBox2为左侧文本框
        int lineIndex = 0;
        private void uiRichTextBox1_TextChanged(object sender, EventArgs e)
        {
            if (lineIndex > uiRichTextBox1.Lines.Length)
            {
                List<string> temp = new List<string>();
                temp.AddRange(uiRichTextBox2.Text.Split('\n'));
                int count = lineIndex - uiRichTextBox1.Lines.Length;
                if (temp.Count - count - 1 > 0)
                {
                    temp.RemoveRange(temp.Count - count - 1, count);
                }
                else {
                    temp.Clear();
                }
                uiRichTextBox2.Text = String.Join("\n",temp);
                lineIndex = uiRichTextBox1.Lines.Length;
            }
            else if(lineIndex < uiRichTextBox1.Lines.Length)
            {
                uiRichTextBox2.Text += (uiRichTextBox1.Lines.Length-1) + "\r\n";
                lineIndex = uiRichTextBox1.Lines.Length;
            }
            else { 
            }
        }

效果

相关推荐
wearegogog1232 分钟前
C# .NET 文件比较工具 WinForms
开发语言·c#·.net
再写一行代码就下班6 分钟前
Cursor配置Java环境、创建Spring Boot项目的步骤
java·开发语言·spring boot
零陵上将军_xdr9 分钟前
后端转全栈学习-Day5-JavaScript 基础-3
开发语言·javascript·学习
oqX0Cazj219 分钟前
2026超火Go-Zero实战:从架构原理到高并发接口落地,彻底解决接口超时、雪崩问题
开发语言·架构·golang
学会去珍惜23 分钟前
C语言简介
c语言·开发语言
糖不吃24 分钟前
WPF值转换器
c#
思麟呀26 分钟前
C++11 核心特性(三):强类型枚举、static_assert 与 std::tuple
开发语言·c++
hoiii18732 分钟前
Qt 实现屏幕截图功能
开发语言·qt·命令模式
小白学大数据1 小时前
爬虫性能天花板:asyncio赋能 Aiohttp,并发提速 10 倍
开发语言·爬虫·数据分析
凡人叶枫1 小时前
Effective C++ 条款07:为多态基类声明 virtual 析构函数
linux·c语言·开发语言·c++