【发布时间】:2021-12-24 04:17:14
【问题描述】:
我有一个只接受数字,不接受其他字符的文本框。为此,我在 keypress 方法中创建了以下函数:
private void txtRGIE_KeyPress(object sender, KeyPressEventArgs e)
{
if (!Char.IsDigit(e.KeyChar) && e.KeyChar != (char)8)
{
e.Handled = true;
}
}
当我输入时验证正在工作,我无法输入我想要的特殊字符或字母。但是,如果我复制包含点或其他字符的数字字符串并将其粘贴到字段中,它会正常接受。例如,如果您复制:323.323 / 323 并粘贴到该字段中,它将接受。如何验证我粘贴的字符,只允许数字?
【问题讨论】:
-
实现
TextChanged事件处理程序 -
考虑使用
MaskedTextbox控件,这可能会使这个问题变得微不足道。 -
C# WinForms 应该有一个 NumericUpDown 控件,对吧?