In Silverlight die Kultur standardmäßig auf „en-US“ unabhängig von dem Land, das Sie laufen tatsächlich in
Sie müssen die Kultur in der Ansichtsklasse mit dem folgenden Code explizit festgelegt.
this.Language = XmlLanguage.GetLanguage(Thread.CurrentThread.CurrentCulture.Name);
, nachdem der Faden Kultur entsprechend eingestellt haben:
CultureInfo ci = new CultureInfo(GetEnterpriseCultureName(enterpriseCultureId));
Thread.CurrentThread.CurrentCulture = ci;
Thread.CurrentThread.CurrentUICulture = ci;
return ci.Name;
Sie können auch als auch das Währungssymbol und die Nummer Separatoren in dieser außer Kraft setzen.
Source
Dann, sobald Sie, dass die einfachste Lösung getan haben, ist die Saiten in ein Paar von Ressourcen-Dateien zu setzen. Die eine heißt "Resource.resx" und die andere heißt "Resource.en-US.resx" (zum Beispiel), wenn Ihr Standard Großbritannien ist.
Dann wird .NET automatisch die richtigen Ressourcen basierend auf der Kultur des Threads auswählen.
Ihr Code scheint OK, so muss das Problem anderswo – Pikoh
Side note: Ich schlage vor, eine Methode/Eigenschaft 'IsUS' Extrahieren oder gleich * misspelling * ärgerliche Fehler (' "us-DE" 'zu vermeiden und gleich) –