richTextBox1.Lines好像不能检测到自动换行的行数,不过估计楼主的数据既然格式固定,应该都是一条数据一行,所以这样也行了private void richTextBox1_TextChanged(object sender, System.EventArgs e)
{
        if(richTextBox1.Lines.Length>3001)
{
richTextBox1.Text=richTextBox1.Text.Substring(richTextBox1.Lines[0].Length+1);
}
}加入数据的时候用
richTextBox1.AppendText(yourString+"\r\n");

解决方案 »

  1.   

    至于改变固定格式固定位置的文本颜色,你可以在插入数据的时候设定值int myP=richTextBox1.Text.Length;richTextBox1.AppendText(yourString+"\r\n");richTextBox1.Select(myP,2);richTextBox1.SelectionColor=Color.Red;richTextBox1.Select(myP+2,2);richTextBox1.SelectionColor=Color.Yellow;不过上面改变颜色的方法在数据数据超过指定值(比如3000)以后效果会改变,因为已经重新设置了richTextBox1的文本值,需要在richTextBox1.Text=richTextBox1.Text.Substring(richTextBox1.Lines[0].Length+1);这句的后面重新遍历整个文本来设定各个字段的颜色,设定的方法和上面类似