您的位置:首页 > 编程语言 > C#

C#项目中接触了TextBox只允许输入数字的问题

2009-07-24 14:29 316 查看
C#项目中接触了TextBox只允许输入数字的问题,这倒不难,如下:
private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
e.Handled = e.KeyChar < '0' || e.KeyChar > '9'; //允许输入数字
if(e.KeyChar==(char)8) //允许输入回退键
{
e.Handled=false;
}
}
但是如果要输入小数点,做成象计算器的那样,可真难了我几天,网上搜索了半天也没答案,
还是自己写吧,效果不错(高手不要笑我,没什么难度,只是自己的一点小经验),
有兴趣的朋友可以看看:
private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
string str=this.textBox1.Text;
e.Handled = e.KeyChar < '0' || e.KeyChar > '9'; //允许输入数字
if(e.KeyChar==(char)8) //允许输入回退键
{
e.Handled=false;
}
if(e.KeyChar==(char)46)
{
if(str=="") //第一个不允许输入小数点
{
e.Handled=true;
return;
}
else
{ //小数点不允许出现2次
foreach(char ch in str)
{
if(char.IsPunctuation(ch))
{
e.Handled=true;
return;
}
}
e.Handled=false;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: