在KeyPress事件中调用如下代码,把KeyPress,和文本值传入即可
private void keyNumber(KeyPressEventArgs e, String text)
{
// 最多输入四位小数
if (text.IndexOf(".") != -1)
{
string s = text.Substring(text.IndexOf("."));
if (s.Length > 4)
{
// 删除键不禁用
if ((int)e.KeyChar != 8)
e.Handled = true;
}
}
try
{
int kc = (int)e.KeyChar;
if (((kc < 48 && kc != 46) || kc > 57) && kc != 8)
e.Handled = true; // 按键不生效
if (kc == 46) //小数点
{
if (text.Length <= 0)
e.Handled = true; //小数点不能在第一位
else
{
float f;
float oldf;
bool b1 = false, b2 = false;
b1 = float.TryParse(text, out oldf);
b2 = float.TryParse(text + e.KeyChar.ToString(), out f);
if (b2 == false)
{
if (b1 == true)
e.Handled = true;
else
e.Handled = false;
}
}
}
}
catch (Exception)
{
}
}
本文介绍如何使用C#在Winform应用程序中限制文本框控件只接受最多四位小数的输入,确保用户输入的数据格式正确。
2696

被折叠的 条评论
为什么被折叠?



