Veröffentlicht 20. März 201015 j Hallo Zusammen, Ich habe eine C# Form Anwendung, die eine RichTextBox füllt. Das Problem: Ich möchte in der Textbox einen Text untereinander darstellen. Beispiel: m_textbox.AppendText("Alksdjfaks kasldjflaskdjf\r\n"); m_textbox.AppendText("Sakljdfi sakdfja"); Die zwei "Spalten" sind mit Tabulatoren getrennt... Das Problem: Wenn ich "Times New Roman" hab, stehen die zwei Spalten schön untereinander. Wenn ich Arial hab nicht.... Wie kann ich zur Laufzeit (abhängig von der Sprache) rausfinden wieviele Tabs ich erzeugen muss? Ich denke man müsste eine art "sichtbare breite" eines Strings (in abhängigkeit von der Schriftart) ermitteln? aber wie? P.S. Bevor jemand fragt, wieso ich nicht einfach ein ListView (Tabelle) oder so verwende... Ich will das ganze später mit einem Editor eines anderen Programms kommunizieren lassen.... Ich hab also absichtlich eine Textbox als Steuerelement gewählt. Falls jemand einen Tipp hat, wärs genial Viele Grüße Stefan
22. März 201015 j Ich denke man müsste eine art "sichtbare breite" eines Strings (in abhängigkeit von der Schriftart) ermitteln? aber wie? Du könntest Graphics.MeasureString "missbrauchen". [Editerle] Haha. Schneller. @Zieg0re :floet:
22. März 201015 j Diese Methode nennt sich MeasureString und funktioniert ganz hervorragend, zeichnet allerdings ein Rechteck um den String, ist also nicht zu 100% genau. Da müsstest du die Grafik vorher zerhackstückeln, frag mich aber nicht, wie^^. Die Methode hat mir bisher immer gereicht für solche Zwecke. Gruß, Zieg0re Bearbeitet 22. März 201015 j von Goulasz .Net Framework 3.0 Link gepostet... MIST Zweiter...
26. März 201015 j Also ich hatte das gleiche Problem gestern in der Berufsschule... ich habs wie folgt hinbekommen: rtb.AppendText("Bla Blubb"); rtb.AppendText("\r\n" + "Bla Blubb"); So hat er bei mir alles in eine neue Zeile geschrieben. Kann natürlich sein, das dies nicht immer funktioniert... bin selbst noch eine C#´ler im Anfangsstadium xD
31. März 201015 j Hallo ich habs schon mal irgendwo gefunden aber weiß nicht genau wo, aber es gibt die Möglichkeit in einem RTF- Feld Tabellen einzufügen, somit kannst du Text untereinander schreiben und zwar egal welche Schriftart / Größe du verwendest Gruß Hans-Jörg
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.