Laden...

[gelöst] Richtextboxcontrol verdreht String

Erstellt von Masterfire vor 11 Jahren Letzter Beitrag vor 11 Jahren 966 Views
M
Masterfire Themenstarter:in
5 Beiträge seit 2012
vor 11 Jahren
[gelöst] Richtextboxcontrol verdreht String

Guten Tag Liebe Community,
ich habe ein sehr seltsames Problem mit der im Titel erwähnten Control. Ich wollte eine Art Taschenrechner basteln und das Funktioniert an sich wunderbar. Es besteht nur ein Problem, wenn ich dem String der der Textbox zur Aktualisierung übergeben wird ein zeichen per "+" - Operator hinzufüge, das keine Nummer ist. Wie z.B. das Komma:


CurrentString = CurrentString + ",".ToString();

Es wird dann nichts weiter gemacht als das zur Zuweisung die Texteigenschaft der Richtextbox verwendet wird.


textBox.Text = CurrentString;

Das lustige ist nun, das in der Textbox nicht z.B. etwa dieser String steht: "5," sondern ",5". Der Spaß geht aber noch weiter. Werden diesem String nun noch weitere zeichen die Nummern sind hinzugefügt wird der String wieder richtig dargestellt. Z.B wir dann nicht etwa: "2,5" sondern vollkommen richtig: "5,2" angezeigt. Ich habe per Debugging überprüft, dass durch meine Algorythmen der String IMMER korrekt übergeben wird. Daran kann es also nicht liegen. Zumal sich das Problem auch einfach beheben lässt. Ich muss nur die Eigenschaft RigthToLeft von Textbox auf "false" setzen. Allerdings ist das nicht wirklich eine Lösung, da die Zeichen bei einem Taschenrechner nunmal von der rechten Seite beginnend nach links geschrieben werden. Solange ich nur Zahlen zu dem String hinzufüge wird er stehts korrekt dargestellt.

Ich kann mir das nur durch einen Fehler in der Implementierung erklären. Hätte da jemand ein Workaround?

Ich bin für jede hilfe dankbar.
Gruß Stephen

S
64 Beiträge seit 2008
vor 11 Jahren

Hallo Stephan,

erst einmal ist ",".ToString(); Blödsinn, weil "," ja bereits schon ein String ist.

Und das was du suchst ist die Eigenschaft SelectionAlignment.

Gruß
Maik

S
269 Beiträge seit 2010
vor 11 Jahren

RightToLeft Layout hat etwas mit Sprachen zu tun, nicht mit Text-Positionierung...

RichTextBox.SelectionAlignment sollte dir weiterhelfen 😉

M
Masterfire Themenstarter:in
5 Beiträge seit 2012
vor 11 Jahren

Mh... das mit dem SectionAlignment war es. Ok manchmal kann man wohl einfach dämlich sein. Ich danke für die freundliche Hilfe!

EDIT: Eine Frage noch... Wie markiert man den Beitrag als gelöst?

S
269 Beiträge seit 2010
vor 11 Jahren

Indem man den Titel bearbeitet und einfach ein "[gelöst]" davor schreibt 😉

Steht übrigens auch in [Hinweis] Wie poste ich richtig?