【发布时间】:2012-09-06 08:22:36
【问题描述】:
我是 C# 的新手。我想要的是以下内容:
我有两个组合框:
- 在第一个中,我拥有所有标准语言(en、de、fr、...)
- 在第二个中,我想从第一个组合框中选择的语言中获取区域语言(如果我选择“en”,那么应该列出“en-US”、“en-GB”、.. .)
谁能帮我解决这个问题? :D
格力兹 阿里昂
【问题讨论】:
标签: c# cultureinfo
我是 C# 的新手。我想要的是以下内容:
我有两个组合框:
谁能帮我解决这个问题? :D
格力兹 阿里昂
【问题讨论】:
标签: c# cultureinfo
你可以用这个:
var parent = CultureInfo.GetCultureInfo(selectedLanguage);
var regionalLanguages = CultureInfo.GetCultures(CultureTypes.AllCultures)
.Where(x => x.Parent.Equals(parent));
【讨论】:
Equals,而是==。另外,请注意selectedLanguage 应该是包含语言的字符串,例如“恩”。除此之外,我没有什么问题,因为我已经测试了代码并且它可以工作。
可能有一种更简单的方法,但这很有效:
Dictionary<CultureInfo, HashSet<CultureInfo>>,将中立文化映射到特定国家/地区的文化。请注意,某些国家/地区中立文化似乎是特定于国家/地区的,例如 zh-Hans(简体中文)和 zh-Hant(繁体中文)。您还将获得一些传统文化,例如 zh-CHS 和 zh-CHT(又是简体中文和繁体)也可能会获得一些带有变音符号的文化。
【讨论】: