我正在尝试制作一个仅接受数字和一个小数点分隔符“。”的文本框。
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && e.KeyChar != '.')
{
e.Handled = true;
}
if (e.KeyChar == '.' && (sender as TextBox).Text.IndexOf('.') > -1)
{
e.Handled = true;
}
上述方法适用于普通的 winforms textBox KeyPress 事件,但不适用于 radTextbox 事件,我的意思是,它在这里有效:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{}
但它在此处生成“对象引用未设置为对象的实例”错误(在第二个 if 上):
private void radTextBox1_KeyPress(object sender, KeyPressEventArgs e)
{}
我不明白为什么以及我应该改变什么。感谢您对了解如何解决此问题的一些帮助。