Reputation: 39
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
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