2016-07-05 10 views
3

Ich habe eine UWP App für Windows 10 Mobile. Die App bietet derzeit zwei Sprachen - Englisch (en-US) und Tschechisch (cs-CZ). Das Problem, das ich habe, ist, dass, wenn ein Benutzer zum Beispiel aus Spanien der App nutzt, sind die Datums- und Zeitformate Amerikaner, nicht Spanisch (die Standard-App Sprache ist en-US):Erhalten Sie aktuelle System Kultur Info

DateTime.Now.ToString("d", System.Globalization.CultureInfo.CurrentCulture); 
DateTime.Now.ToString("d", System.Globalization.CultureInfo.CurrentUICulture); 
DateTime.Now.ToString(System.Globalization.DateTimeFormatInfo.CurrentInfo.ShortDatePattern); 

Ich mag würde irgendwie Rufen Sie die Systemsprache ACTUAL ab, um die Daten und Uhrzeiten im richtigen Format basierend auf der Telefonsprache zu erhalten. Momentan sieht es so aus, als ob alle APIs aus dem Namespace System.Globalization die Kulturinformationen zurückgeben, die die App verwendet.

Antwort

3

Nach mehr suchen, ich habe es geschafft, über die folgende Frage zu kommen: Date Time formatting in Windows 10 Universals (Store) Apps wo der Autor der Frage die folgende API-Aufruf erwähnt:

Windows.System.UserProfile.GlobalizationPreferences.Languages[0] 

Dies gibt die Sprache Zeichenfolge für die erste Sprache aus der Systemsprache des Benutzers.

es in der folgenden Art und Weise verwendet, gibt mir das erwartete Ergebnis:

DateTime.Now.ToString("d", new System.Globalization.CultureInfo(Windows.System.UserProfile.GlobalizationPreferences.Languages[0])); 
+1

Diese auf Systeme aus, wo die bevorzugte Sprache und die bevorzugten locale sind nicht das gleiche. Sie erstellen ein 'CultureInfo'-Objekt basierend auf der bevorzugten Sprache des Benutzers, nicht auf dem vom Benutzer bevorzugten Datums- und Uhrzeitformat. – IInspectable

+0

@Intspectable Vielen Dank für Ihre Beobachtung! Ich habe etwas recherchiert und leider scheint es dafür keine API zu geben. Und selbst die UWP 'DatePicker' und' TimePicker' verwenden Formate, die auf der ersten Systemsprache basieren, nicht dem bevorzugten Format. Dies entspricht dem Rest des Systemverhaltens. –

+0

Dennoch erhalten einige Anwendungen die regionalen Einstellungen richtig. Ich bin nicht genug mit der UWP-Entwicklung vertraut, um zu wissen, ob es eine dedizierte (noch gut versteckte) API gibt, oder ob diese Apps einfach die erforderlichen regionalen Einstellungen auswerten/erraten. – IInspectable

Verwandte Themen