数字文本框

Ric*_*rdo 3 c# textbox numeric

我是编程的新手,我不太了解,但我正在制作一个计算器,我想使用一个仅限数字和小数的文本框,当用户从剪贴板粘贴文本时,文本框会删除任何文字字符,如MS calc.

请花时间解释每个部分,以便我可以学习或编写它并告诉我要搜索的内容.

谢谢

编辑:我会更具体:

如何在C#中创建数字文本框?我使用了蒙面文本框,但它不会取小数.

我已经读过有关重载OnKeyPress方法的事情,所以它会纠正任何错误的字符,但我不知道这样做.

小智 11

为要仅为数字的文本框添加事件处理程序,并添加以下代码:

private void textBoxNumbersOnly_KeyPress(object sender, KeyPressEventArgs e)
{
   if (Char.IsDigit(e.KeyChar) || e.KeyChar == '\b')
   {
      e.Handled = false;
   }
   else
   {
      e.Handled = true;
   }
}
Run Code Online (Sandbox Code Playgroud)

这允许数字0到9,以及退格(有用的恕我直言).允许通过'.' 字符,如果你想支持小数


Tim*_*eyn 7

如果仔细观察,在Windows计算器中,数字显示在标签而不是文本框中(它不会获得焦点).窗口接收键盘事件.

所以看一下表单上的KeyPressed和KeyDown事件.