title: Cancel PreviewKeyDown
body: <p>When the typing cursor is in a textbox I want catch the Arrow keys, 
  do some treatment then prevent this event for being handled by the input.</p>
  
  <p>In <code>KeyPress</code> event we have <code>KeyPressEventArgs</code> that we can put <code>e.Handled=false;</code> 
  to deal with. 
  But Arrows keys don't trig <code>KeyPress</code> event.</p>
  
  <p>I have tried with <code>e.IsInputKey = true;</code> then  int <code>KeyDown</code> Event as MS says.</p>
  
  <p><a href="https://msdn.microsoft.com/en-us/library/system.windows.forms.control.previewkeydown%28v=vs.110%29.aspx?f=255&amp;MSPPError=-2147217396" rel="nofollow noreferrer">Msdn Control.PreviewKeyDown Event</a></p>
  
  <p>But seems <code>e.Handled=false;</code> doesn't work neither.</p>
  
  <p>Here is my current code</p>
  
  <pre><code>private void textBox1_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
  {    
        if (e.KeyCode == Keys.Right || e.KeyCode == Keys.Left)
                  e.IsInputKey = true;               
  }
  
  private void textBox1_KeyDown(object sender, KeyEventArgs e)
  {                         
       if (e.KeyCode == Keys.Right || e.KeyCode == Keys.Left)
       {
              // some other treatment [...]
          e.Handled = false;               
       }
  }
  </code></pre>
  
  <p><a href="https://i.stack.imgur.com/DVYCB.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/DVYCB.jpg" alt="enter image description here"></a></p>
  
  <p>I want to change the default pressing arrow behaviour in TextBox which moves the cursor. I don't want to the typing cursor between "r" and "l" (above) could be able to move. </p>
  
  <p>Any suggestion?</p>