In einer .net 2 Winforms-Anwendung, was ist ein guter Weg, um die Kultur für die gesamte Anwendung zu setzen?
Einstellung CurrentThread.CurrentCulture für jeden neuen Thread ist wiederholend und fehleranfällig.
Idealerweise möchte ich es einstellen, wenn die App startet und es vergessen.Einfache Möglichkeit, CurrentCulture für die gesamte Anwendung zu setzen?
Antwort
Die Kultur für einen Thread in. NET ist die Kultur für das System (wie von einer einzigen Anwendung/Prozess angezeigt). Es gibt keine Möglichkeit, dies in .NET zu überschreiben, Sie müssen weiterhin die CurrentCulture für jeden neuen Thread festlegen.
> die Kultur für das System streng genommen, die Kultur entsprechend den regionalen Einstellungen des aktuellen Benutzers. – Joe
Sie können Anwendungs aktuelle Kultur auf diese Weise festgelegt:
static void Main()
{
System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("fi-FI");
Application.CurrentCulture = cultureInfo;
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
Ich bin nicht sicher, ob es hilft, weil ich noch nie mit Fäden getestet.
edit: es funktioniert nicht. Ich denke, man muss die aktuelle Kultur in jedem Thread festlegen.
Ich habe Ihre Lösung versucht und es machte keinen Unterschied. –
"Application.CurrentCulture" delegiert an 'Thread.CurrentThread.CurrentCulture', sodass es nur für den Hauptthread der Anwendung festgelegt wird. – adrianbanks
- 1. Systemschrift für iPhone-Anwendung ändern - gesamte Anwendung
- 2. Einfachste Möglichkeit, die gesamte Dateistruktur zu speichern?
- 3. AVAudioPlayer hängt die gesamte Anwendung
- 4. Einfache Möglichkeit für Nicht-Nerd, einfache Site zu verwalten?
- 5. Einfache Möglichkeit, die Farbe für ein Svg-Bild zu ändern?
- 6. Gibt es eine Möglichkeit, Standardschriftart für Ihre Anwendung zu ändern
- 7. Wie Paginierung in Laravel zu setzen, ohne die gesamte Seite
- 8. Frühling 3 eine Property einmal für die gesamte Anwendung registrieren
- 9. Einfache Möglichkeit, Findcontrol zu verwenden („“)
- 10. Wie wird die gesamte Flex-Anwendung stummgeschaltet?
- 11. Einfache Möglichkeit, Plisten zu verbinden?
- 12. PHP - Gibt es eine einfache Möglichkeit, ein $ _SESSION für mehrere Variablen zu setzen?
- 13. Makefile für eine einfache Anwendung
- 14. Cookie für die gesamte Website?
- 15. Möglichkeit, ein Passwort für die R-Anwendung sicher zu vergeben?
- 16. einfache Möglichkeit zum Setzen von Werten auf wxTextCtrl
- 17. Wie universelle Zeitzone für die gesamte Anwendung in Winforms
- 18. mit Single Alertbox Methode für die gesamte Anwendung im Android
- 19. SBT: Plattformübergreifende Möglichkeit, java.library.path zu setzen?
- 20. Einfache Möglichkeit, OpenFileDialog kleiner zu machen?
- 21. Ist es möglich, die gesamte .NET-Anwendung zu dekompilieren?
- 22. asp deaktivieren Taste für die gesamte Sitzung
- 23. C# einfache Möglichkeit, formatierte Daten zu drucken
- 24. Ist es möglich, ToolTipService.ShowOnDisabled = true für die gesamte Anwendung zu aktivieren?
- 25. Erstellen eines PHAR für eine einfache Anwendung
- 26. Einfache Möglichkeit, Django Template-Variablen zu entkommen
- 27. müssen in der Lage sein, Schriftgröße über die gesamte Anwendung zu ändern für accesibility
- 28. Einfache Möglichkeit, dynamische Ansichten zu implementieren?
- 29. Einfache Möglichkeit, eine Zeichenfolge für Zeichenfolgen zu suchen
- 30. Einfache Möglichkeit, mehrere Datumsformate zu vereinheitlichen?
Das sind wahrscheinlich alte Nachrichten, aber es ist möglich, in .NET 4.5 (siehe Link) (http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.defaultthreadcurrentculture) das zu tun, was Sie wollen .aspx)). Sie müssen wahrscheinlich sowohl 'DefaultThreadCurrentUICulture' als auch' DefaultThreadCurrentCulture' einstellen. – nooblar
Ich weiß, dass dieses Thema ziemlich alt ist, aber alle Neulinge können sehen: http://stackoverflow.com/questions/28426349/custom-format-for-entire-application – Tariktiri