如何限制c#textbox只能输入小数
1个回答
展开全部
首先你要限制他输入要是数字和负号;
其次你要判断他中间需要有并且只能有一个小数点+负号。
限制数字代码如下(要确保输入能删能回车)写在KeyPress事件里:
//如果输入的不是数字键,也不是回车键、Backspace键,则取消该输入
if (!(Char.IsNumber(e.KeyChar)) //数字
&& e.KeyChar != (char)13 //回车阿斯玛
&& e.KeyChar= (char)8 //删除阿斯玛
&& e.KeyChar= (char)46 // .阿斯玛
&& e.KeyChar= (char)45 // -阿斯玛
)
{
e.Handled = true;
}
判断写在响应回车之时,写在KeyDown事件里:
if(e.KeyCode==Keys.Enter)
{
if (textBox1.Text.Split(textBox1.Text,'.').Count==1&&textBox1.Text.SubString()!='-')
{
textBox2.Focus(); //焦点这才移开
}
else
{
MessageBox.Show("输入违法");
}
}
其次你要判断他中间需要有并且只能有一个小数点+负号。
限制数字代码如下(要确保输入能删能回车)写在KeyPress事件里:
//如果输入的不是数字键,也不是回车键、Backspace键,则取消该输入
if (!(Char.IsNumber(e.KeyChar)) //数字
&& e.KeyChar != (char)13 //回车阿斯玛
&& e.KeyChar= (char)8 //删除阿斯玛
&& e.KeyChar= (char)46 // .阿斯玛
&& e.KeyChar= (char)45 // -阿斯玛
)
{
e.Handled = true;
}
判断写在响应回车之时,写在KeyDown事件里:
if(e.KeyCode==Keys.Enter)
{
if (textBox1.Text.Split(textBox1.Text,'.').Count==1&&textBox1.Text.SubString()!='-')
{
textBox2.Focus(); //焦点这才移开
}
else
{
MessageBox.Show("输入违法");
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询