C# TextBox控件实现只能输入数字的方法

   这篇文章主要介绍了C# TextBox控件实现只能输入数字的方法,本文使用TextBox的keypress事件实现这个需求,需要的朋友可以参考下

  只需要在控件TextBox的keypress事件中写入如下代码即可满足要求:

   代码如下:

  if (e.KeyChar == '.' && this.txbEnd.Text.IndexOf(".") != -1)

  {

  e.Handled = true;

  }

  if (!((e.KeyChar >= 48 && e.KeyChar <= 57) || e.KeyChar == '.' || e.KeyChar == 8))

  {

  e.Handled = true;

  }

  其中.txbEnd为当前你窗体中textbox控件的name

时间: 2024-11-01 21:59:41

C# TextBox控件实现只能输入数字的方法的相关文章

jQuery控制文本框只能输入数字和字母及使用方法_jquery

在公司开发WinForm项目时,发现公司自主研发的textbox控件非常强大,可以实现"只能输入数字"."只能输入字母"和"只能输入数字和字母"的三种输入限制,这样就可以精确控制用户输入的内容范围,让"用户永远没有办法输入限定的内容范围之外的其他内容",也就是"用户即使想犯错误也没有机会",这种限制控件输入的方式给了我很大的启发,如果在web项目中也能做到这样的精确控制,那么就可以避免因为一些非法输入而造成

VC增强Edit控件为日期输入控件

MFC所提供的组件已经可以完成很多功能了,但有时候我们还需要这些控件按我们自己的意图去处理.比如EDIT控件,虽然我们可以设置EDIT控件为只能接受数字属性,但如果我们还需要它可以接收数字意外的字符,比如需要控件只能接收"2004-02-20"这样的格式的日期字符呢?我们需要自己在WM_CHAR消息里面来处理输入的字符.可是,当输入字符后,Windows会向Edit控件发送WM_CHAR消息,应用程序会调用Windows默认的Edit控件窗口处理函数WndProc来处理该控件.这时我们

C#.net中,如何设置textbox只能输入数字?

问题描述 thanx.能否给各代码? 解决方案 解决方案二:onkeyup="this.value.replace('',/[^d]+/g)"看看好用不解决方案三:这样的问题不要太多啊,你搜一下,一大把解决方案四:就是一个正则的限制吗解决方案五:keypress事件里,看情况设置e.Handle例如if(e.KeyChar<'0'||e.KeyChar>'9')e.Handle=true;解决方案六:<asp:textboxonkeypress="isnum

Asp.net TextBox只能输入数字

原文:Asp.net TextBox只能输入数字 <asp:textbox id="TextBox1" onkeyup="if(isNaN(value))execCommand('undo')" runat="server" Width="80px" onafterpaste="if(isNaN(value))execCommand('undo')"></asp:textbox> 其

asp.net TextBox 只能输入数字和小数点

在定制的textbox控件中,如果只允许输入数字,需要考虑如下三种情况: 正常按键输入的字符,包括西文.中文字符等 通过键盘快捷键方式贴入的文本,即ctrl+v操作 通过上下文关联菜单的mouse操作贴入的文本,即"粘贴"操作 在探讨的同类文章中,多数只考虑了第1种情况,忽略得了第2.3种常见的操作 只允许数据小数 private sub text1_keypress(keyascii as integer)  if keyascii < 48 or keyascii >

TEXTBOX控件无限输入不顶格

问题描述 想实现TEXTBOX控件文字从右到左输入,一直无限输入!我将控件改成TEXTBOX1.TEXTALIGN=Right,输入文字到左边框在继续输入TEXTBOX控件里的文字就没有变化了将TEXTBOX1.RINGHTTOLEFT=YES能实现文字一直输入,但文字是反向的!求解决! 解决方案 解决方案二:可能只能自己开发一个TextBox控件了.解决方案三:你可以读一下TextBox源代码..net前几年就是开源的.解决方案四:textchanged事件里面设置CaretIndex=0解决

在C#窗体程序中,如何判断textbox控件中输入的格式是浮点型

问题描述 在C#窗体程序中,如何判断textbox控件中输入的格式是浮点型?求教,谢谢咯! 解决方案 解决方案二:简单点try{float.Parse();}catch{//不是}解决方案三:1L方法最简单,还可以用正则判断解决方案四:Regex.IsMatch(strValue,@"^d+.d+$")解决方案五:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSyst

winform-WinForm窗体中,清空诸如TEXTBOX 等控件中用户输入的内容

问题描述 WinForm窗体中,清空诸如TEXTBOX 等控件中用户输入的内容 WinForm窗体中,清空诸如TEXTBOX 等控件中用户输入的内容.记得有使用Controls和foreach 之类的.... 在下初学者,悉心求教.望各长辈指点迷津 解决方案 foreach (TextBox tb in Controls.OfType<TextBox>()) { tb.Text = ""; } 解决方案二: 不同的控件没有通用的方法,不过你可以有另一个思路,就是把窗体重新加

asp.net TextBox只能输入数字、退格、小数点(小数点只能有一个且不能在第一位)

asp教程.net textbox只能输入数字.退格.小数点(小数点只能有一个且不能在第一位) private void textbox1_keypress(object sender, keypresseventargs e)        {     e.handled = !(char.isnumber(e.keychar) || e.keychar == (char)8 || e.keychar == '.');     if (!e.handled) (sender as textbo