Ich habe eine .NET-Anwendung in mehreren verschiedenen Sprachen verfügbar. Im Grunde lade und speichere ich eine Datei (mit Doppelpunkten) in der System Culture, aber ich möchte erzwingen, dass Zahlen immer im US-Kulturformat angezeigt und eingegeben werden (Komma als Zifferngruppierung, Punkt als Dezimaltrennzeichen). Ich habe versucht, die Anwendung Kultur zu überschreiben, aber es scheint nicht zu funktionieren. Gibt es eine Möglichkeit, damit umzugehen?das Überschreiben von NumberFormat in .net-Anwendung cultureInfo
0
A
Antwort
1
CultureInfo.InvariantCulture
existiert für den speziellen Zweck der Persistenz von Daten in einem einheitlichen Format. More Info on MSDN
Für die UI, wenn Sie wirklich alle Formatierungen wollen US-Stil sein, können Sie dies tun:
Application.CurrentCulture = new CultureInfo("en-US");
Beachten Sie, dass die Kultur auf jedem Thread setzen müssen.
Würde es die Benutzeroberfläche brechen, wenn ich Application.CultureInfo = InvariantCulture? – ak3nat0n
Ich vermute ich habe dich missverstanden. Der Zweck von InvariantCulture wäre, die Doubles kulturunabhängig zu speichern. Es sollte nicht für die Benutzeroberfläche verwendet werden. Dazu würde ich Application.CurrentCulture = new CultureInfo ("en-US") setzen. – dahlbyk