Resizable RichtTextBox

Wer schon mal ein Log in einer Winformsapplikation(.Net 1.1) mit Richtextboxen darstellen wollte ist sicherlich schnell auf das Problem gestossen. Wie kann ich die RichTextBox so nutzen das sich die grösse automatisch der Textlänge anpasst? Autosize? Nein, Autosize gillt nur wenn sich die Schriftart ändert…Bei mir hat folgender Weg funktioniert:

private void contentTextBox_TextChanged(object sender, System.EventArgs e)  { Graphics g = (Graphics) this.contentTextBox.CreateGraphics();   int h;  h = (int) (g.MeasureString(this.contentTextBox.Text, this.contentTextBox.Font, this.contentTextBox.Width).Height + 10) ;                //if(h > this.contentTextBox.Height )        this.contentTextBox.Height = h;                 this.contentTextBox.Invalidate(true);}

Ich habe vorgängig noch die Ganze RichTextBox in ein eigenes Kontrol ausgelagert und dann den TextChanged als Event Methode definiert.

Hinterlassen Sie einen Kommentar