static int k=0;
static int c=0;
private void txtRf_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(c==0)
{
if(e.KeyChar=='.' && k==0)
{
k++;
c++;
if(e.KeyChar!='.')
{
e.Handled = true;
}
}
else
{
if(e.KeyChar!='\b')
{
if((e.KeyChar<'0')||(e.KeyChar>'9'))
{
e.Handled = true;
}
}
}
}
else
{
if(e.KeyChar=='\b')
{
c=c-1;
if(c==0)
{
k=k-1;
}
}
else
{
if(c<3 && e.KeyChar!='.')
{
c++;
if(e.KeyChar!='\b')
{
if((e.KeyChar<'0')||(e.KeyChar>'9'))
{
e.Handled = true;
}
}
}
else
{
e.Handled=true;
}
}
}
}
然后再把IMEMode属性设置为disable 就是禁用输入法 因为使用上段代码之后如果切换输入法就不起作用了
----------------------------------------------------------
这段代码是让用户在textbox控件里只能输入数字 一个小数点 和退格键 是我花一个多小时想出来的哈