使用另一个RichTextBox放在要添加行号的左边
使用以下代码
//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 { } }
效果
标签:lineIndex,uiRichTextBox2,temp,uiRichTextBox1,c#,Lines,RichTextbox,行号,Length From: https://www.cnblogs.com/RainbowSea/p/18099750