String aus Datenbank in einer Richtextbox formatieren

Theki

Grünschnabel
Guten Abend zusammen,

ich denke, es ist im Moment einfach ein Denkfehler, hab aber bei Google leider bisher nix gefunden.
Ich habe in einer Acces-Datenbak einen String bzw. Typ: Text, zum Beispiel: 123\n5454

Code:
 con.Open();
            OleDbCommand cmd = new OleDbCommand();
            cmd.Connection = con;

            cmd.CommandText = strText;
            OleDbDataReader rs = cmd.ExecuteReader();

            while (rs.Read())
            {
                string infos= rs.GetString(0);
                rtb_infos.Text = infos;

            }
            con.Close();

So in der Ausgabe müsste er mir ja nun theoretisch einen Zeilenbruch anzeigen, richtig?
Macht er aber nicht. Wieso?

Vielen Dank im vorraus
 
Hi.

Weil unter Windows ein Zeilenumbruch mit "\r\n" herbeigeführt wird. :)

Also entweder die Daten in der Datenbank anpassen, oder einfach bei deiner Ausgabe "\n" durch "\r\n" ersetzen. :)

C#:
rtb_infos.Text = infos.Replace("\n", "\r\n");

lg,..
 
Hi,
zuerst einmal vielen Dank für deine schnelle Antwort.
Leider funktioniert es nicht. Bekomme auch keinerlei Exception.

Hab auch soeben probiert, den String in der Datenbank mit \r\n anzupassen.
Hat leider auch nicht funktionert. Der String wird dann einfach wie folgt ausgegeben: 123\r\n567
 
Eigenartig.

Sicher, dass du jetzt einen echten Zeilenumbruch in der Datenbank stehen hast, und nicht einfach die Zeichen "\r\n"?

Das könntest testen, in dem du so deinen Text in die RichTextBox speicherst:

C#:
rtb_infos.Text = infos.Replace("\\r\\n", "\r\n");

lg,..
 
Daran hat es gelegen. Danke.
Wie kann ich den einen echten Zeilenumbruch in der Datenbank hinterlegen. Logischerweiße doch dann nur durch \\r\\n oder?
 
Naja, wie speicherst denn deinen Text in der Datenbank?
Wenn du eine normale Eingabemaske hast, drück einfach die Enter-Taste.. ;)
 
Zurück