Ich versuche, den Tab Schlüssel in einer Windows Forms-Anwendung zu erfassen und eine benutzerdefinierte Aktion auszuführen, wenn es gedrückt wird.Wie Capture TAB-Taste in WinForms-Anwendung abfangen?
Ich habe ein Formular mit mehreren listViews und Schaltflächen, ich habe die KeyPreview -Eigenschaft des Formulars auf True festgelegt und wenn ich einen anderen Schlüssel als Registerkarte drücken, wird meine KeyDown-Ereignishandler aufgerufen.
Aber das ist nicht wahr mit dem Tab Schlüssel - Ich erhalte WM_KEYDOWN Nachricht auch in WndProc.
Muss ich jedes Steuerelement in meinem Formular festlegen - seine TabStop Eigenschaft - zu false? Es muss einen eleganteren Weg geben.
Danke.
ja! Vielen Dank. Aus Gründen der Vollständigkeit musste ich das ProcessCmdKey-Ereignis von Form überschreiben und prüfen, ob (keyData & Keys.Tab) == Keys.Tab. – Axarydax
Während dies theoretisch die Frage beantworten könnte, [wäre es vorzuziehen] (http://meta.stackexchange.com/q/8259), die wesentlichen Teile der Antwort hier aufzunehmen und den Link als Referenz bereitzustellen. –