无法更改输入语言

时间:2013-11-06 09:18:21

标签: c# .net

我正在制作多语种打字导师,想要从代码中更改输入语言,但语言不在语言栏上(它们安装在操作系统中,但我只在语言栏中显示英文)我尝试了下面的代码但是它不起作用..

System.Globalization.CultureInfo my_culture = new System.Globalization.CultureInfo("fr-FR");
InputLanguage c = InputLanguage.FromCulture(my_culture);
InputLanguage.CurrentInputLanguage = c;

请注意,我不希望最终用户首先在语言栏中获取这些语言然后工作..在这种情况下,我想输入法语但我无法这样做..请帮助我的朋友

1 个答案:

答案 0 :(得分:1)

我知道它迟到但我发现这段代码对我有用:

    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;
    }

感谢Change Language in C#