如何确定KeyPress事件中是否已按下退格键?

B. *_*non 8 c# keycode keypress winforms

这个:

http://msdn.microsoft.com/en-us/library/system.windows.forms.control.keypress.aspx

...表示我应该在KeyPress事件中访问e.KeyCode,但我似乎没有.我试图只允许1,2,3和退格:

private void textBoxQH1_KeyPress(object sender, KeyPressEventArgs e) {
  if ((e.KeyChar != '1') &&
      (e.KeyChar != '2') &&
      (e.KeyChar != '3') &&
      (e.KeyChar != (Keys.Back))) {
    e.Handled = true; 
  }
}
Run Code Online (Sandbox Code Playgroud)

......但是"e." 没有显示像示例所示的"KeyCode"值,并且尝试使用Keys.Back的KeyChar骂我,"运算符'!='不能应用于'char'和'System.Windows.Forms.Keys'类型的操作数"

那我该怎么做呢?

jor*_*hmv 15

尝试比较e.KeyChar != (char)Keys.Back,你应该把它强制转换为char,因为Keys是枚举

看到这个:KeyPressEventArgs.KeyChar