C# winform 控件只能输入数字和小数点数字还必须是能转换成浮点类型注释。提示没有KeyChar的定义
在C# Winform中,可以通过以下代码实现只能输入数字和小数点,且数字必须是能转换成浮点类型的限制:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
// 判断输入的字符是否为数字或小数点或退格键
if (!char.IsDigit(e.KeyChar) && e.KeyChar != '.' && e.KeyChar != (char)Keys.Back)
{
e.Handled = true; // 忽略非法输入
}
// 判断小数点是否已经存在,且当前输入的字符是否为小数点
if (e.KeyChar == '.' && textBox1.Text.IndexOf('.') >= 0)
{
e.Handled = true; // 忽略非法输入
}
// 判断输入的字符是否能转换成浮点类型
float num;
if (float.TryParse(textBox1.Text + e.KeyChar, out num) == false)
{
e.Handled = true; // 忽略非法输入
}
}
以上代码中,textBox1_KeyPress是一个事件处理函数,用于处理在文本框中的按键事件。在该函数中,我们首先判断当前输入的字符是否为数字或小数点或退格键,如果不是,则将其忽略;然后判断小数点是否已经存在,如果已经存在且当前输入的字符为小数点,则将其忽略;最后,我们尝试将当前输入的字符和文本框中已有的字符转换成浮点类型,如果转换失败,则将其忽略。
原文地址: https://www.cveoy.top/t/topic/b77Q 著作权归作者所有。请勿转载和采集!