2009-07-24 2 views
7

Ich mag wäre in der Lage sein, um programmatisch die Tastatur Navigation für Dialogfelder zu emulieren.C# Wie zwischen den Kontrollen programmatisch Registerkarte

Ich habe eine benutzerdefinierte Hardware-Gerät mit einer Tastatur, die Ich mag würde für Dialogfeld Navigation verwenden.

Ich weiß von Focus(), aber ich würde lieber etwas tun, das automatisch die Tab-Reihenfolge eingehalten werden. Durch die Emulation der Tastaturnavigation muss ich nicht sorgen, um das komplexe Verhalten für jede Art von Kontrolle neu zu erfinden.

Weiß jemand, wie man das macht?

Danke!

+0

Danke, sie waren alle gute Antworten, und so schnell auch. Ich ging mit Thomas Vorschlag, da es gut zu meinem Projekt passte. – NXT

Antwort

3

könnten Sie P/Invoke verwenden, um die Windows-API-Funktion keybd_event aufrufen Drücken der Tab-Taste zu simulieren.

Bonus: Sie können Ihr Gerät auch dazu verwenden, Registerkarten in einen Texteditor einzugeben! ;)

9

In WinForms wollen:

Control nextControl = this.GetNextControl(myControl, true); 

simulieren einen Tab drücken, ich glaube, es ist die folgenden:

SendKeys.Send("{TAB}"); 
Verwandte Themen