在按键事件处理程序中验证字符



我有一个带有maskedTextboxfield的表单,我想在其中启用仅添加十六进制值。十六进制值的长度固定为16个字符,前六位数字始终相同,并且每两个字符后都有破折号。

我已经在此字段上将蒙版属性设置为" 0 0 0-15-4f-aa-aa-aa-aa-aa-aa",以仅允许字母数字。但是这样,我能够输入所有字母,不仅是" A-f"one_answers" a-f"。

在关键事件中,请遵循代码:

char c = e.KeyChar;
if (('G' <= c && c <= 'Z') || ('g' <= c && c <= 'z'))
{
  e.Handled = true;
}

当我运行此代码时,应用程序到达此部分,但是即使到那时,字符" G-Z"one_answers" G-Z"仍在MaskedTextbox中输入。我如何防止此字符在此MaskedTextbox中接受?

使用 keyCode keychar 设置
e.KeyCode;

最新更新