C# - 在 richTextBox Windows 表单中对行进行编号

C# - Numbering lines in richTextBox Windows Forms

遇到无法处理的问题。 我正在尝试对 richTextBox 中的所有行进行编号,程序确实可以运行,但是当我单击编号按钮时它崩溃了。 谁能解释一下为什么?

代码:

public string temp = null;
private void button1_Click(object sender, EventArgs e)
{
    int i;
    for (i=1;i<richTextBox1.Lines.Length+1;i++)
    {
         temp = richTextBox1.Lines[i];
         richTextBox1.Lines[i] = i + ": " + temp;
    }
}

Lines 属性 公开的数组是从零开始的。您需要将 for 循环声明更改为:

for (i=0;i<richTextBox1.Lines.Length;i++)

正如您现在的代码所示,您将尝试访问数组中越界(以及缺少第一行)的元素。