LangResource Strings - Zeilenumbruch wird ignoriert.

Christian Kusmanow

Erfahrenes Mitglied
Hallo Tutorlialer!

Ich lege alle Dialogtexte in meinen Programmen in Ressurce (*.resx) Dateien ab,
damit ich diese mit einem meiner Tools leichter automatisch auf Rechtschreibung prüfen
und auch übersetzen kann.

Nur wenn ich ein "\r\n" in die Resourcen schreibe, wird dies ignoriert und direkt rein geschrieben:
"Text text\r\ntext text."
Ich hab mir bisher immer Abhilfe geschafft indem ich die Strings mit einem Symbol teile,
im Programm wieder aufsplitte und ein Environment.NewLine dazischen schiebe.
HTML:
<data name="StringResource.03">
	<value>Text text|text text.|Text.</value>
</data>
Code:
string[] Caption = MainForm.GetResourceManager().GetString( "StringResource.03" ).Split( '|' );
ErrorMessages.Show_MsgBoxInformation(
	Caption[ 0 ] + Environment.NewLine + Caption[ 1 ],
	Caption[ 2 ] );
Meine Fragen dazu:
  1. Warum sich das so verhält?
  2. Ob man das auch sauberer hin bekommt?
Ich find das so absolut hässlich. :(

Hat wer 'ne Idee? :)

MfG, cosmo
 

Nico Graichen

Erfahrenes Mitglied
Moin cosmo

Du musst im Resource-Editor einfach mit Enter den Zeilenumbruch einfügen, also wie in Word.

Grund:
Bin mir nicht sicher, aber ich nehm an, dass die Methode GetString des ResourceManagers die String schon Maskiert zurückgegeben werden und demnach Steuerzeichen als Strings interpretiert werden.
 

Christian Kusmanow

Erfahrenes Mitglied
WTF, so ein Nonsens. :eek:
Warum ist das nur so dumm gemacht.
Ist ja fast so sinnig wie die nicht vorhandene Namenskonvention im Jscript. ;)
Verdammt kotzt mich das an. :mad:

Danke für die Info, niggo.

LG, cosmo