我正在开发一个在应用程序中提供更改语言选项的 Metro 应用程序。我希望在更改语言文本框输入语言时也得到更改。它不应该依赖于系统语言。
问问题
539 次
2 回答
1
我使用这些代码: 首先你必须找到你想要的文化语言的名称。方法“GetInutLanguageByName”将返回您请求的语言然后您将检查您是否安装了请求的语言,如果是则返回请求的语言。然后很容易更改输入语言...
private static InputLanguage GetInutLanguageByName(string layOut)
{
foreach (InputLanguage lng in InputLanguage.InstalledInputLanguages)
{
if (lng.Culture.DisplayName == layOut)
{
return lng;
}
}
return null;
}
private void SetKeyboardLayout(InputLanguage Layout)
{
InputLanguage.CurrentInputLanguage = Layout;
}
private void FirstNameTextBox_Enter(object sender, EventArgs e)
{
SetKeyboardLayout(GetInutLanguageByName("Persian"));
}
于 2014-12-17T08:16:52.850 回答
0
首先,您需要确保您想要的语言已安装在操作系统中,并且它在 INSTALLED INPUT LANGUAGES 列表中(检查控制面板中语言和区域设置下的语言栏)。如果它不在语言栏中,添加它.. 例如,您要将应用程序语言更改为“FRENCH”.. 您需要为您要在应用程序中更改的每种语言创建一个新资源文件,然后更改当前线程的文化属性.. 您熟悉吗资源文件(.resx)和文化信息类??
于 2013-11-09T13:41:28.527 回答