Rilevamento del tasto Ctrl trattenuto all’avvio dell’applicazione?

Quando viene avviata l’applicazione WPF, utilizza il Single Sign-On per accedere. Per consentire ai tester di simulare altri utenti, vorremmo rilevare il pulsante di controllo che viene tenuto premuto all’avvio e aprire una finestra di dialogo di accesso.

Questo è quello che uso in un’app WPF per verificare se il tasto di controllo viene tenuto premuto nel costruttore della finestra principale. Utilizza System.Windows.Input.Keyboard

if ((Keyboard.Modifiers & ModifierKeys.Control) > 0) PromptForMarketSelection(); 

EDIT – bug corretto segnalato da Coincoin

Una soluzione universale sarebbe quella di p / invocare GetAsyncKeyState(VK_CONTROL) , nel caso in cui non si riesca a trovare qualcosa di integrato in .NET.

Date un’occhiata a questo articolo che ha usato ModifierKeys per scoprire quello che stai cercando

Controlla il seguente link … scorri verso il basso per vedere la risposta di Jeff Wain.

Come rilevare il tasto attualmente premuto?