CurrentCulture
ist die .NET-Darstellung des Standardbenutzergebietsschemas des Systems. Dies steuert die Standardanzahl und Datumsformatierung und dergleichen.
CurrentUICulture
bezieht sich auf die Standardsprache der Benutzeroberfläche, eine in Windows 2000 eingeführte Einstellung. Dies bezieht sich hauptsächlich auf den UI-Lokalisierungs-/Übersetzungsteil Ihrer App.
Welche regionalen Optionen das System auch haben soll, sind die "aktuellen" Werte in Ihrer .NET App.
Oft sind sie beide gleich. Aber auf meinem System würden sie anders sein: Ich bevorzuge meine Zahlen und Daten im deutschen Format, so dass die CurrentCulture
wäre Deutsch, aber ich bevorzuge auch alle meine Anwendungen in Englisch, so dass die CurrentUICulture
wäre Englisch.
Es gibt einen schönen Artikel zum Thema: Sorting it all Out: Why we have both CurrentCulture and CurrentUICulture
Bedenken Sie, dass Microsoft in ihrer Weisheit die UI-Kulturen von US-Englisch und (britischem) Englisch oder anderen Englisch nicht trennt. Es gibt kein MUI für Englisch, was bedeutet, dass die 'CurrentUICulture' immer auf einem englischsprachigen Computer in US-amerikanischem Englisch ist, unabhängig von der 'CurrentCulture', die so eingestellt werden kann, dass die Ländereinstellungen lokalisiert werden. – nicodemus13
Ja. Ich bin in Großbritannien und finde "CurrentCulture" ist "en-GB", aber "CurrentUICulture" ist "en-US". –