This documentation is archived and is not being maintained.

InputLanguage.FromCulture Method

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

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.