Entwickler-Ecke
WinForms - Größe einer RichTextBox nach inhalt verändern
Beuti - Mo 28.07.08 15:58
Titel: Größe einer RichTextBox nach inhalt verändern
Hallo zusammen
ich habe mehr oder weniger ein kleines Problem. Eventuell weis ja von euch einer wie man das einfach lösen kann.
Ich habe in meinem Form eine RichTextBox (RTB).
Beim öffnen dieses Form wird eine Datenbankverbindung aufgebaut und aus selbiger einige Werte ausgegelesen. Diese sollen dann in der RTB angezeigt werden. Hier besteht jetzt die Möglichkeit, dass zwischen 2 und ca 5 Zeilen Text in der RTB stehen. Außerdem kann von Anfang an festgelegt werden das gar keine Datenbankverbindung aufgebaut werden darft dann bleibt das Feld komplett leer. Was ich nun machen möchte is das Feld anhand des Inhalt in der Größe (geht vor allem umd die Höhe) zu verändern. Bietet mir .Net hier irgendwelche Möglichkeiten? Sprich was ich bräuchte ist die AutoSize-Funktion die das Label mir bietet. Beim Label habe ich aber das Problem, dass es nicht Multilinefähig ist. Das ist die einzige Vorrausetzung die ich an die Textbox stellen würde. Daher wäre es auch möglich auch auf eine anderes Control auszuweiche.
Die einzige Möglichkeit die mir bisher dazu eingefallen ist, ist zu ermitteln wieviele Zeilen in der Textbox stehen und mir mit einem fixen Wert mit der Höhe einer Zeile zu multiplizieren. Aber das is in meinen Augen recht umständlich.
Gruß und schon mal Danke für die Hilfe
Beuti
Th69 - Mo 28.07.08 16:49
Was ist an deiner Möglichkeit umständlich?
C#-Quelltext
1:
| int height = rtb.Lines.Length * rtb.Font.Height; |
Wenn du keine Formatierungen im Text hast, dann kanst du auch eine normale Textbox (mit Multiline = true) verwenden.
Evtl. noch Readonly auf true setzen, falls der Text nicht bearbeitet werden darf.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!