我试图阻止用户在文本字段中输入空格键。我有这个代码。
private void FirstNameBox_KeyDown(object sender, KeyEventArgs e)
{
//////////MessageBox.Show(e.KeyValue.ToString());
//Now check to see if the key pressed is a space
if ((e.KeyValue == 32))
{
MessageBox.Show("Please Enter only first name.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
//Stop the key registering
e.Handled = true;
e.SuppressKeyPress = true;
}
else
{
//allow enter
}
}
其中32是Space Button的关键值。但这对我来说现在不行。我在过去使用此代码只与数字条目完美配合...尝试空间但不工作。任何想法??
答案 0 :(得分:1)
if (e.KeyCode == Keys.Space)
{
// Do something here.
}
答案 1 :(得分:1)
尝试使用遮罩规则,而不是自己动手。
答案 2 :(得分:0)
很难说,因为你没有提供太多细节。例如:WPF / Winforms?哪个版本?为什么?你的约束是什么?等等......
在任何情况下,你不应该在任何情况下手动执行此操作......如果你正在使用WPF / MVVM,一个好的方法是使用验证。
对于上述内容,您可以查看本文中的验证部分:The big mvvm template