title: How can I capture CTRL-BACKSPACE in WPF/C#?
body: <p>I have an application which uses <code>PreviewKeyDown</code> to capture <kbd>CTRL</kbd><kbd>X</kbd> keystrokes (where <code>X</code> is any letter) along the lines of:</p>
  
  <pre><code>Key key = (e.Key == Key.System ? e.SystemKey : e.Key);
  if (e.KeyboardDevice.Modifiers == ModifierKeys.Control) {
      switch (key) {
          case Key.A: keyStroke = 0x01; break;
          case Key.B: keyStroke = 0x02; break;
          :
  </code></pre>
  
  <p>Because there doesn't appear to be a keystroke for backspace, I'm capturing that in a <code>PreviewTextInput</code> (along with the non<kbd>CTRL</kbd> keystrokes so as to avoid trying to map keys to characters manually):</p>
  
  <pre><code>private void Window_PreviewTextInput(object sender, TextCompositionEventArgs e) {
      Char ch = e.Text.ToCharArray()[0];
      if ((ch &gt;= (Char)0x01) &amp;&amp; (ch &lt;= (Char)0x7e)) {
          // Do something with character.
      }
  }
  </code></pre>
  
  <p>However, I need to be able to capture the user pressing <kbd>CTRL</kbd><kbd>BACKSPACE</kbd>. I'm at a loss since the <code>PreviewKeyDown</code> doesn't seem to know about backspace and the <code>TextCompositionEventArgs</code> event doesn't seem to carry the keystates (like <code>CTRL</code> or <code>ALT</code>).</p>
  
  <p>What's the best way (or, indeed, <em>any</em> way) to intercept <kbd>CTRL</kbd><kbd>BACKSPACE</kbd>?</p>