Ich möchte zu einer Form ein paar Tastaturereignisse hinzufügen. Dazu habe ich folgenden Code:
[code]
void FullScreenKeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyCode == Keys.Right)
{
this.next();
}
else if(e.KeyCode == Keys.Left)
{
this.back();
}
}
[/code]
Die funktioniert aber aus irgendweinem Grund allerdings nur, wenn ich die Pfeiltasten nach links oder rechts drücke, während ich dabei die Strg-Taste gedrückt halte. Kann mir jemand sagen, wie ich es hinbekomme, dass ich dabei nicht die Strg-Taste gedrückt halten muss?
schau mal mit einem Breakpoint, ob du wirklick in diesen EventHandler kommst, oder ob windows die richtige Aktion default mässig ausführt.
this.KeyPreview = true;
Damit die Form die KeyEvents bekommt.
Die Eigenschaft KeyPreview habe ich schon auf true gesetzt. In den EventHandler komme ich lediglich, wenn ich die Stg-Taste gedrückt halte während ich auf eine der Pfeiltasten drücke.
Ich bin jetzt darauf gestoßen, dass die Eingabe der Pfeiltasten von den Komponenten von selbst geregelt wird. Kann ich dieses Verhalten irgendwie "deaktivieren"???
Hallo Strauss,
in KeyDown bzw. PreviewKeyDown e.Handled = true
herbivore