C# 无法更改输入语言
我正在制作多语言打字教程,希望从代码中更改输入语言,但语言栏上没有这些语言(它们安装在操作系统中,但我在语言栏中只显示英语)。我尝试了以下代码,但不起作用C# 无法更改输入语言,c#,.net,C#,.net,我正在制作多语言打字教程,希望从代码中更改输入语言,但语言栏上没有这些语言(它们安装在操作系统中,但我在语言栏中只显示英语)。我尝试了以下代码,但不起作用 System.Globalization.CultureInfo my_culture = new System.Globalization.CultureInfo("fr-FR"); InputLanguage c = InputLanguage.FromCulture(my_culture); InputLanguage.CurrentI
System.Globalization.CultureInfo my_culture = new System.Globalization.CultureInfo("fr-FR");
InputLanguage c = InputLanguage.FromCulture(my_culture);
InputLanguage.CurrentInputLanguage = c;
请注意,我不希望最终用户先在语言栏中获取这些语言,然后再工作。。在这种情况下,我想用法语打字,但我不能这样做。。朋友们,请帮助我我知道时间很晚了,但我发现这段代码对我很有用:
var culture = System.Globalization.CultureInfo.GetCultureInfo("fa-IR");
var lang = InputLanguage.FromCulture(culture);
if(InputLanguage.InstalledInputLanguages.IndexOf(lang) >= 0)
{
InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages[InputLanguage.InstalledInputLanguages.IndexOf(lang)];
System.Threading.Thread.CurrentThread.CurrentCulture = culture;
}
else
{
InputLanguage.CurrentInputLanguage = original;
}
多亏了我认为这是不可能的。你必须首先在语言栏中显示该语言。但我见过一些应用程序,例如在页面中,即使语言栏中没有显示阿拉伯语,你也可以输入阿拉伯语。。有什么办法吗?你能提供我能做的任何类型的键盘映射的信息吗?感谢回复有一些方法可以使用机器上甚至没有安装的自定义字体,例如。(未经测试)您在之前的帖子中说过“让语言出现在语言栏中”如何通过编程实现??谢谢,我不知道,可能会将其作为答案发布,但在搜索时找不到。但如果你这样做,你就可以改变输入语言。