windows输入语言改变了c#

时间:2014-05-11 14:15:39

标签: c#

我正在研究Visual Studio(Windows应用程序)中的一个简单程序,我需要知道用户何时更改键盘语言(我不关心语言是什么或现在是什么)。 / p>

我试过这段代码:

 private void MainForm_InputLanguageChanged(object sender, InputLanguageChangedEventArgs e)
    {

    }

但是当表单处于活动状态并且专注时,它只会在表单中获得语言更改!示例:我将打开Goog​​le Chrome并更改语言,此功能将不会被调用。

我需要更改特定的Windows键盘。形式输入语言没有改变..

这对我来说非常重要我为此花了大约一个星期的时间,所以请帮忙。

ty guys。

1 个答案:

答案 0 :(得分:1)

据我所知,在Windows中,输入语言是特定于进程的。因此,您将获得应用程序的InputLanguageChanged事件。如果您希望在全球范围内收到有关语言更改的通知,您应该自行完成。例如,使用GetKeyboardLayout API函数定期检查活动窗口并获取键盘布局。