Probleme bei verschiedenen Ländereinstellungen

01/02/2009 - 21:28 von Brian Schmalisch | Report spam
Ich erstelle für meine Anwendung XML-Dateien mit speziellen Einstellungen,
wie Farbe und Font. Diese werden dann zu den Filialen übertragen und
ausgeführt. Bisher war die Anwendung nur in Deutschland - nun kam aber eine
Filiale in UK, Canada und USA dazu. Wenn jetzt in Kanada eine XML angelegt
wird, kommt es bei uns zu Fehlern und umgekehrt.

Hier mal das Erstellen von XML-Attributen:
TypeConverter tc = TypeDescriptor.GetConverter(typeof(Font));
XmlAttribute fontAttr = xmlDoc.CreateAttribute("Font");
fontAttr.Value = tc.ConvertToString(tickerFont);

ColorConverter cc = new ColorConverter();
XmlAttribute forecolAttr = xmlDoc.CreateAttribute("ForeColor");
forecolAttr.Value = cc.ConvertToString(tickerFontColor);


Hier das Einlesen:
TypeConverter tc TypeDescriptor.GetConverter(typeof(Font));
tickerFont = (Font)tc.ConvertFromString(node.Attributes["Font"].Value);
fontDialogTicker.Font = tickerFont;

ColorConverter cc = new ColorConverter();
tickerFontColor =
(Color)cc.ConvertFromString(node.Attributes["ForeColor"].Value);
fontDialogTicker.Color = tickerFontColor;


Welche Möglichkeiten habe ich, dass ich die Fehler vermeide?

Gruss

Brian
 

Lesen sie die antworten

#1 Stefan Hoffmann
01/02/2009 - 22:46 | Warnen spam
hallo Brian,

Brian Schmalisch schrieb:
Welche Möglichkeiten habe ich, dass ich die Fehler vermeide?


Lass mal FxCop laufen, er gibt dir dazu schöne Hinweise:

http://msdn.microsoft.com/en-us/library/bb429476(VS.80).aspx

fontAttr.Value = tc.ConvertToString(tickerFont);


Ich kenne jetzt diese Methode im Speziellen nicht, aber zu mindest die
Standard-Convert-Aufrufe kennen meist ein Überladung mit einem
IFormatProvider, z.B. CultureInfo.InvariantCulture aus System.Globalization.

Wenn jetzt in Kanada eine XML angelegt wird, kommt es bei uns zu Fehlern und umgekehrt.


Fehler? Du hast keine gepostet...


mfG

Ähnliche fragen