currentculture "überschreiben" ?

06/01/2009 - 08:56 von Thomas Hübner | Report spam
Hi NG,

wenn man ein Form auf mehrsprachig setzt werden ja automatisch die
Sprachdateien angelegt und abhàngig von der beim User eingestellten
Region gesetzt.
Wenn z.B. ein russischer User auf einem System die Region Settings
seines Windows auf Englisch eingestellt hat und meine GUI trotzdem in
Russisch haben möchte.
Wie kann ich das zur Laufzeit realisieren ohne das der User sein System
umstellen muß? z.B. über eine Combobox je nach verfügbaren Sprachdateien:
<System>
English
Deutsch
Russisch

Gruß,
Thomas
 

Lesen sie die antworten

#1 Peter Fleischer
06/01/2009 - 10:09 | Warnen spam
"Thomas Hübner" schrieb im Newsbeitrag
news:gjv2rf$oq3$

wenn man ein Form auf mehrsprachig setzt werden ja automatisch die
Sprachdateien angelegt und abhàngig von der beim User eingestellten Region
gesetzt.



Hi Thomas,
wenn du selbst nichts machst (in deinem Programmcode), dann werden für die
laufende Anwendung Culture und UICulture aus den Systemeinstellungen
festgelegt.

Wenn z.B. ein russischer User auf einem System die Region Settings seines
Windows auf Englisch eingestellt hat und meine GUI trotzdem in Russisch
haben möchte.



Dann musst du diese Möglichkeit im Programm vorsehen, z.B. durch ein
Extra-Settings-Menü mit einer ComboBox mit den möglichen Kulturen.

Wie kann ich das zur Laufzeit realisieren ohne das der User sein System
umstellen muß? z.B. über eine Combobox je nach verfügbaren Sprachdateien:
<System>
English
Deutsch
Russisch



Irgendwo nach dem Programmstart kannst du in Code die Culture setzen, z.B.
so:

Threading.Thread.CurrentThread.CurrentCulture = _
New Globalization.CultureInfo(cbCulture.SelectedValue.Tostring)
Threading.Thread.CurrentThread.CurrentUICulture = _
New Globalization.CultureInfo(cbCulture.SelectedValue.Tostring)


Viele Grüsse
Peter

Ähnliche fragen