您现在的位置: 爱51代码网 >> 范文 >> 文章正文
C#input输入框最后一位数字无法删除

C#input输入框最后一位数字无法删除

t4.KeyPress += new System.Windows.Forms.KeyPressEventHandler(text_KeyPress);
t5.KeyPress += new System.Windows.Forms.KeyPressEventHandler(text_KeyPress);
t4.TextChanged += new EventHandler(text_TextChanged);
t5.TextChanged += new EventHandler(text_TextChanged);
在网上找到这两段代码,贴上去了,才发现输入数字后删除,个位总删不掉

C# code?123456789101112131415 private void text_KeyPress(object sender, KeyPressEventArgs e)         {             e.Handled = !(Char.IsNumber(e.KeyChar) || e.KeyChar == (char)8 || e.KeyChar == '.');             if (!e.Handled) (sender as TextBox).Tag = (sender as TextBox).Text;//记录最后一次正确输入            }           private void text_TextChanged(object sender, EventArgs e)         {             if (!System.Text.RegularExpressions.Regex.IsMatch((sender as TextBox).Text, @"^(?!0\d)\d+(\.\d*)?$"))             {                 int index = (sender as TextBox).SelectionStart;                 (sender as TextBox).Text = (sender as TextBox).Tag as string;                 (sender as TextBox).SelectionStart = index;             }         }
 
不知道是什么原因,是因为@"^(?!0\d)\d+(\.\d*)?$"吗
请教大神们 应该怎么修改啊?

因为空字符串不匹配@"^(?!0\d)\d+(\.\d*)?$"),这样文件就是用tag中的值(个位数)。
加个判断,如果为空字符串,不判断正则
        private void text_TextChanged(object sender, EventArgs e)         {             if ((sender as TextBox).Text == "")             {                 return;             }               if (!System.Text.RegularExpressions.Regex.IsMatch((sender as TextBox).Text, @"^(?!0\d)\d+(\.\d*)?$"))             {                 int index = (sender as TextBox).SelectionStart;                 (sender as TextBox).Text = (sender as TextBox).Tag as string;                 (sender as TextBox).SelectionStart = index;             }         }

  • 上一篇文章:

  • 下一篇文章: 没有了
  • 最新文章 热点文章 相关文章
    GIS用百度行政区域的经纬度直接画
    不小心卸载了.net 4 extend,vs2
    C#byte【】里的数转换成string时
    C#的session取不到值
    java如何判断一个字符串里的数字
    随机找出24个不一样的字,在把一
    java怎么实现html转为pdf
    lotus数据列表文档个数如何实时统
    lotus代理中LS如何将字符串保存到
    在lotus BS系统里怎样方便实现统
    GIS用百度行政区域的经纬度直接画
    不小心卸载了.net 4 extend,vs2
    C#byte【】里的数转换成string时
    C#的session取不到值
    java如何判断一个字符串里的数字
    java怎么实现html转为pdf
    lotus数据列表文档个数如何实时统
    在lotus BS系统里怎样方便实现统
    undefined reference timer_crea
    linux文件/usr/lib破坏了,还原后
    VS2010如何让多个项目共享文
    oledb如何远程读写excel2003
    C#如何开发NPAPI
    asp.net实现打开ftp站点并下
    LINQ to entity 返回多个结果
    SMTP 服务器要求安全连接或客
    C#怎样快速扫描指定网段内所
    C#客户端收到数据后怎样将da
    C#函数式Currying函数
    asp.net access 登陆界面,用
     



    设为首页 | 加入收藏 | 网站地图 | 友情链接 |