Solat Ali
Solat Ali

Reputation: 39

Unable to change input language

I am making Multilingual typing tutor and want to change input language from code, but the languages are NOT on the language bar (they are installed in the OS but i only have English showing in language bar) I tried the following code but it didn't work..

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

Note that i do not want the end-user to first get those languages in language bar and then work.. In this case, I want to type in french but i'm unable to do so.. PLEASE HELP ME FRIENDS

Upvotes: 0

Views: 976

Answers (1)

Yashar Aliabbasi
Yashar Aliabbasi

Reputation: 2719

I know its late but I found this code work for me:

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

Thanks to Change Language in C#

Upvotes: 1

Related Questions