我使用下面的代码不允许文本框中除数字之外的任何字符......但它允许'.'特点!我不希望它允许点。
private void txtJustNumber_KeyPress(object sender, KeyPressEventArgs e)
{
if (!char.IsDigit((char)(e.KeyChar)) &&
e.KeyChar != ((char)(Keys.Enter)) &&
e.KeyChar != (char)(Keys.Delete) &&
e.KeyChar != (char)(Keys.Back)&&
e.KeyChar !=(char)(Keys.OemPeriod))
{
e.Handled = true;
}
}
最佳答案
用这个:
if (!char.IsDigit((char)(e.KeyChar)) &&
e.KeyChar != ((char)(Keys.Enter)) &&
(e.KeyChar != (char)(Keys.Delete) || e.KeyChar == Char.Parse(".")) &&
e.KeyChar != (char)(Keys.Back)
)
这是因为 Keys.Delete 的 char 值是 46,与 '.' 相同。我不知道它为什么喜欢这个。
关于c# - 无法确定文本框 KeyPress 事件的 '.' keychar,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13075017/