//Tạo hostkey window để nhận sự kiện hotkey toàn cục 
//Để nhấn tổ hợp phím Ctrl + Shift + X/J chuyển bộ gõ
using System;
using System.Windows.Forms;

class HotkeyWindow : NativeWindow
{
    public event Action<int> HotkeyPressed;

    public HotkeyWindow()
    {
        CreateHandle(new CreateParams());
    }

    protected override void WndProc(ref Message m)
    {
        const int WM_HOTKEY = 0x0312;

        if (m.Msg == WM_HOTKEY)
        {
            int id = m.WParam.ToInt32();
            HotkeyPressed?.Invoke(id);
        }

        base.WndProc(ref m);
    }
}