你注意一下:richTextBox1.Lines就知道了,它可以获得当前行数,你可以根据它再resize 你的richTextBox1

解决方案 »

  1.   

    richTextBox1.TextLength;
    richTextBox1.PreferredHeight;也可以参考,基本上如果是RTF 格式,字高等是变体不定数,要获得全域高度挺累的,要一行一行的selected 再求
      

  2.   

    如果你文本框里的文本的大小不变
    可以简单表示如下:
    private void richTextBox1_KeyDown(object sender,KeyEventArgs e)
    {
    if(e.KeyCode==Keys.Enter)
    {
    if(richTextBox1.Height<=richTextBox1.Font.Height*(richTextBox1.Lines.GetLength(0)+1))
    {
    richTextBox1.Height = richTextBox1.Font.Height*(richTextBox1.Lines.GetLength(0)+1);
    }
    }
    }