限制文本框中的数字和字母-C#

gac*_*epa 1 c# winforms

我想限制可以在文本框中输入的数字和字母。假设我只想允许数字0-5和字母ad(小写和大写)。我已经尝试过使用带遮罩的文本框,但是它只允许我仅指定数字,仅指定字母(均无限制)或同时指定数字和字母,但顺序相同。最好的情况是:用户尝试输入数字6,但没有任何内容输入到文本框中,对于af范围以外的字母也是如此。我认为最好使用的事件将是Keypress事件,但我对如何实现限制事情一无所知。

Joe*_*ton 5

为您的文本框使用KeyPress事件。

protected void myTextBox_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs)
{
    e.Handled = !IsValidCharacter(e.KeyChar);
}

private bool IsValidCharacter(char c)
{
    bool isValid = true;

    // put your logic here to define which characters are valid
    return isValid;
}
Run Code Online (Sandbox Code Playgroud)