如何获得BackSpace - 文本框中只有数字限制?

Gol*_*old 5 c# winforms

我在KeyPress事件中插入此内容:

e.Handled = !Char.IsNumber(e.KeyChar);
Run Code Online (Sandbox Code Playgroud)

但我没有Backspace钥匙,如何解决?

Jon*_*eet 16

怎么样:

e.Handled = !(Char.IsNumber(e.KeyChar) || e.KeyChar == 8);
Run Code Online (Sandbox Code Playgroud)

或等效地:

e.Handled = !Char.IsNumber(e.KeyChar) && e.KeyChar != 8;
Run Code Online (Sandbox Code Playgroud)

(正如在罗马的答案中,您也可以'\b'在上面的代码中使用而不是8.)


rom*_*n m 7

这是检查退格是否被按下的方法:

if(e.KeyChar == '\b'){//backspace was pressed}
Run Code Online (Sandbox Code Playgroud)

  • 我是否获得了由Jon Skeet赞助的徽章? (6认同)