管理多语言资源

managing MultiLanguage resources

我在我的项目中创建了两个资源文件 GlobalRes.ge.resxGlobalResources.en.resx

我接收语言作为输入参数。我想知道如何根据语言解读我的价值观。例如,如果 string lang = "en" 那么 globalres.welcome 我应该看到 WOLCOME 但如果我选择 lang = "ge" 那么 globalres.welcome 应该是 willkommen (我已经在两个文件中创建了欢迎行)

资源设计器将根据 CurrentUICulture 加载适当的文本

System.Threading.Thread.CurrentThread.CurrentUICulture = System.Globalization.CultureInfo.GetCultureInfo("en-US");
bCancel.Text = Resource.Cancel;

在 .NET 4.5 及更高版本中,您可以使用以下属性来设置 DefaultThreadCurrentCulture 和 DefaultThreadCurrentUICulture 文化。

CultureInfo.DefaultThreadCurrentCulture = System.Globalization.CultureInfo.GetCultureInfo("en-US");
CultureInfo.DefaultThreadCurrentUICulture = System.Globalization.CultureInfo.GetCultureInfo("en-US");