In Switzerland there are 4 official languages:
de-CHfr-CHit-CHrm-CHOfficially, the number format use an apostrophe as a thousands separator with a dot . as the decimal separator (for example: 1'234'567.89).
The CultureInfo.NumberFormat is correct with de-CH and it-CH, but not with fr-CH and rm-CH:
new CultureInfo("de-CH", false).NumberFormat;

new CultureInfo("it-CH", false).NumberFormat;

new CultureInfo("fr-CH", false).NumberFormat;

new CultureInfo("rm-CH", false).NumberFormat;

Tagging subscribers to this area: @tarekgh, @safern, @krwq
Notify danmosemsft if you want to be subscribed.
.NET doesn't carry the globalization data. we just use whatever the OS or native globalization libraries give us. Please file this issue to the Windows team through Windows 10 Feedback Hub. I'll try to send it internally to them too.
Thanks for reporting this issue!
I wanted to add a comment here to give some more info:
Much of the globalization data for "regional formats", or cultures/locales, in Windows 10 comes from the Unicode CLDR project. In this case all 4 of the locales derive their data from CLDR.
A ticket/issue has been filed with the CLDR project here: 13877
Regarding this comment:
Officially, the number format use an apostrophe as a thousands separator with a dot . as the decimal separator (for example: 1'234'567.89).
Do you know of any "Official" sources for this info? If so that could help with the CLDR ticket. If you do, please let me know and I can add it to the ticket.
Thank you!
@jefgen thanks for the answer. I see a lot of issues in CLDR project about "Swiss cultures":
It's not clear, each person gives their opinion, which gives an inconsistent result between the different regions of the country, it doesn't make sense.
Unfortunately I haven't found any official document that defines the Swiss rules for the moment. I continue the search.
Most helpful comment
Thanks for reporting this issue!
I wanted to add a comment here to give some more info:
Much of the globalization data for "regional formats", or cultures/locales, in Windows 10 comes from the Unicode CLDR project. In this case all 4 of the locales derive their data from CLDR.
A ticket/issue has been filed with the CLDR project here: 13877
Regarding this comment:
Do you know of any "Official" sources for this info? If so that could help with the CLDR ticket. If you do, please let me know and I can add it to the ticket.
Thank you!