在富文本框中显示行号c#

Ani*_*oel 11 c# textbox multiline line-numbers

我有一个Multiline richtextbox控件,我想要集成添加行号的功能.我考虑过很多方法

  1. 添加标签并在行数更改时更新行号
  2. 添加一个图片框以在其上绘制字符串.
  3. 添加另一个文本框并在其上显示行号
  4. 添加列表框并在其中显示行号.

我有两个疑惑.

  1. 我正在使用的richtextbox是一个自定义控件和RichTextBox类的derieves.如何为其添加多个控件.
  2. 在c#中显示多行文本的行号的最佳方法是什么

小智 3

我自己的例子。一切都很好,但必须禁用自动换行:(

    int maxLC = 1; //maxLineCount - should be public
    private void rTB_KeyUp(object sender, KeyEventArgs e)
    {
        int linecount = rTB.GetLineFromCharIndex( rTB.TextLength ) + 1;
        if (linecount != maxLC)
        {
            tB_line.Clear();
            for (int i = 1; i < linecount+1; i++)
            {
                tB_line.AppendText(Convert.ToString(i) + "\n");
            }
            maxLC = linecount;
        }
    }
Run Code Online (Sandbox Code Playgroud)

其中 rTB 是我的 Richtextbox,tB 是 rTB 旁边的文本框

JT jr