Посмотрите WinApi, там можно из C# подрубиться к User 32 и проверять нажата ли клавиша...
В C# проверять фокус на форме...
На такой этажерке писали клавиатурный шпион год назад исходники не сохранились...
Выглядело оно типо вот так
https://blog.foolsoft.ru/c-primer-vyzova-winapi-fu...
Вот книги "Учусь Win32 API"
В.А. Безруков WIN32 API ПРОГРАММИРОВАНИЕ Учебное пособие 2009
https://ru.pdfdrive.com/win32-api-Разработка-прило...
Возможно, можно через стандартные средства C# закинуть обработчик события что вертится на кнопке... Подробнее буду смотреть в выходные...
Удачи