【发布时间】:2013-06-01 09:14:51
【问题描述】:
请原谅我问这个问题,我已经查看了与此相关的各种不同的问题,但我仍然无法实现它。
使用我看过的答案,我收集了这个,并将这个编码应用于我的文本框。
private void TxtBox5_KeyPress(object sender, KeyPressEventArgs e)
{
if (!(Char.IsDigit(e.KeyChar) || (e.KeyChar == (char)Keys.Back)))
e.Handled = true;
}
现在,当我继续运行程序时,我仍然可以在其中输入字母。我不知道下一步该怎么做,所以任何解决方案都会很棒。谢谢。
【问题讨论】:
-
首先:在调试器中单步调试代码并确保正在调用例程
-
如果这是一个 Windows 窗体应用程序,为什么不使用只允许数字的 NumericUpDown 控件。
-
您使用文本框是否有特殊原因?将输入限制为数字的最简单方法是使用 numericUpDown 而不是 textBox。如果你真的需要文本框,你可以创建一个包含所有数字(可能还有小数点)的字符串或列表,然后检查你输入的字符串是否包含任何其他字符
-
Control.KeyPress 的 MSDN 文档有一个示例。
-
@Coder,我正在使用文本框,因为它看起来比 NumericUpDown 更干净。
标签: c# textbox numbers limiting