title: .NET Winforms Button KeyDown for Arrow keys
body: <p>I have need for regulating program flow depending on Arrow pressing when Button is Active Control. Like this:</p>
  
  <pre><code>Private Sub btn_OK_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles btn_OK.KeyDown
  
      If e.KeyCode = Keys.Up Then
          If mode = mymodes.first Then
              firstcontrol.Focus()
          Else
              secondcontrol.Focus()
          End If
      End If
  End Sub
  </code></pre>
  
  <p>As I can see KeyDown event is not fired at all with pressing any arrow key. Program instead do some his internal functionality and moves a focus by using form's tab order (as it seem's). KeyPreview is set to true on actual form.   </p>
  
  <p>Is here any way to get wanted functionality with arrow keys and without subclassing a button and using ProcessCmdKey?</p>