C#的winform中控制TextBox中只能输入正整数

txt_n是要输入的文本的名字

private void txt_n_KeyPress(object sender, KeyPressEventArgs e)
{
  if (e.KeyChar != '\b')//这是允许输入退格键
  {
    int len = txt_n.Text.Length;
    if (len < 1 && e.KeyChar == '0')
    {
      e.Handled = true ;
    }
    else if ((e.KeyChar < '0') || (e.KeyChar > '9'))//这是允许输入0-9数字
    {
      e.Handled = true;
    }

  }
}

KeyPressEventArgs.Handled 属性
获取或设置一个值,该值指示是否处理过 KeyPress 事件。
属性值
类型:System.Boolean
如果处理过事件,则为 true;否则为 false。

解释:
就是说如果将Handled 设为True,那么KeyPress事件将会取消,这样就是说你按下了某个个按键了,但是系统不处理了,等于没按!

————————————————
版权声明:本文为CSDN博主「宋军涛」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/songjuntao8/article/details/18567465

posted @ 2023-07-03 15:11  非是非非  阅读(329)  评论(0编辑  收藏  举报