2009-08-16 60 views
0

我有一堆文本在裏面的richtextarea。我想以某種方式將其展開爲適合所有文本而不顯示滾動條。我希望寬度保持標準,並擴大高度。有沒有這樣做的好方法?我計劃循環並每次向其高度添加一個像素,然後檢查滾動條是否可見。在vb.net中沒有簡單的方法,我可以在不使用windows API特定方法的情況下找到它。Winforms autoheight文本區域

回答

0

我會這樣做的方式是考慮SelectionStart屬性。如果SelectionStart是x或x的倍數,那麼我會增加我的身高。

textBox.Multiline = true; 
private void textBox_TextChanged(object sender, EventArgs e) 
     { 
      if (textBox.SelectionStart % 20 == 0) 
      { 
       textBox.Height += 20; 
      } 
     } 
+1

這個代碼非常說,如果當前所選文本的指數是20(字符)的整數倍則使RichTextBox的20個像素高。這聽起來不像是一個非常穩定的解決方案。 – 2009-08-16 21:38:01

+0

20可以由majestiq決定的數字替換。但是,答案的基本思想是讓majestiq明白如何做到這一點。 – 2009-08-17 14:46:23