InputLanguage.FromCulture Method (CultureInfo)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Returns the input language associated with the specified culture.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public static InputLanguage FromCulture(
	CultureInfo culture


Type: System.Globalization.CultureInfo

The CultureInfo that specifies the culture to convert from.

Return Value

Type: System.Windows.Forms.InputLanguage

An InputLanguage that represents the previously selected input language.

The FromCulture method selects from among installed keyboards. Specifically, this method performs the following operations:

  1. Gets the LCID associated with culture.

  2. Gets the full list of available input language identifiers (HKLs) from the GetKeyboardLayoutList function.

  3. Finds the HKL that corresponds to the LCID from culture, if one is present.

  4. Returns the installed keyboard associated with that HKL.

  5. If no keyboard is found, returns null.


The FromCulture method never tries to load or install an additional keyboard if one has not already been installed for culture. Use the Platform SDK function, LoadKeyboardLayout, to install an additional keyboard.

The following code example sets the default input language as the current input language.

First, DefaultInputLanguage is called to get the system default language. Next, CurrentInputLanguage is called to get the current input language. The results are printed in a text box. Then, calling CurrentInputLanguage with the default input language changes the current input language to the default. The new current input language is displayed in a text box.

This code assumes that textBox1 has been instantiated.

 public void SetNewCurrentLanguage() {
    // Gets the default, and current languages.
    InputLanguage myDefaultLanguage = InputLanguage.DefaultInputLanguage;
    InputLanguage myCurrentLanguage = InputLanguage.CurrentInputLanguage;
    textBox1.Text = "Current input language is: " +
        myCurrentLanguage.Culture.EnglishName + '\n';
    textBox1.Text += "Default input language is: " +
        myDefaultLanguage.Culture.EnglishName + '\n';

    //Print the new current input language.
    InputLanguage myCurrentLanguage2 = InputLanguage.CurrentInputLanguage;
    textBox1.Text += "New current input language is: " +

.NET Framework
Available since 1.1
Return to top