InputLanguageChangedEventArgs Class
Assembly: System.Windows.Forms (in system.windows.forms.dll)
You can use the data from the InputLanguageChangedEventArgs to make decisions about whether to change Input Method Editors (IMEs) or swap right-to-left values. You can also change the CurrentCulture of a thread and the CurrentUICulture properties so that different resources get picked up.
An InputLanguageChangedEventArgs identifies the locale and the character set of the new input language.
The InputLanguageChanging event precedes the InputLanguageChanged event.
The following example creates a new Form and attaches an event handler to the InputLanguageChanged event. This event changes the IMEmode when the input language changes to Japanese.
Imports System Imports System.Drawing Imports System.Collections Imports System.ComponentModel Imports System.Windows.Forms Imports System.Data Public Class Form1 Inherits System.Windows.Forms.Form Dim WithEvents rtb As New RichTextBox() Public Sub New() MyBase.New() Me.Controls.Add(rtb) rtb.Dock = DockStyle.Fill End Sub Private Sub languageChange( _ ByVal sender As Object, _ ByVal e As InputLanguageChangedEventArgs _ ) Handles MyBase.InputLanguageChanged ' If the input language is Japanese. ' set the initial IMEMode to Katakana. If e.InputLanguage.Culture.TwoLetterISOLanguageName.Equals("ja") = True Then rtb.ImeMode = System.Windows.Forms.ImeMode.Katakana End If End Sub Public Shared Sub Main() Application.Run(new Form1()) End Sub End Class
import System.*;
import System.Drawing.*;
import System.Collections.*;
import System.ComponentModel.*;
import System.Windows.Forms.*;
import System.Data.*;
public class Form1 extends System.Windows.Forms.Form
{
private RichTextBox rtb = new RichTextBox();
public Form1()
{
this.get_Controls().Add(rtb);
rtb.set_Dock(DockStyle.Fill);
this.add_InputLanguageChanged(
new InputLanguageChangedEventHandler(LanguageChange));
} //Form1
private void LanguageChange(Object sender, InputLanguageChangedEventArgs e)
{
// If the input language is Japanese.
// set the initial IMEMode to Katakana.
if (e.get_InputLanguage().get_Culture().get_TwoLetterISOLanguageName().
Equals("ja")) {
rtb.set_ImeMode(System.Windows.Forms.ImeMode.Katakana);
}
} //LanguageChange
public static void main(String[] args)
{
Application.Run(new Form1());
} //main
} //Form1
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.