Similar to the InputLanguageChangedEventArgs , this encapsulates the same information but for the InputLanguageChanging event, which is raised before the input language is changed, giving you an opportunity to Cancel it. public class InputLanguageChangingEventArgs : System.ComponentModel.CancelEventArgs { // Public Constructors public InputLanguageChangingEventArgs (System.Globalization.CultureInfo culture , bool sysCharSet ); public InputLanguageChangingEventArgs (InputLanguage inputLanguage , bool sysCharSet ); // Public Instance Properties public CultureInfo Culture {get; } public InputLanguage InputLanguage {get; } public bool SysCharSet {get; } } HierarchySystem.Object System.EventArgs System.ComponentModel.CancelEventArgs InputLanguageChangingEventArgs Passed ToForm.OnInputLanguageChanging() , InputLanguageChangingEventHandler.{BeginInvoke() , Invoke()} |