C#Winforms中的文本框验证 - 应该只允许1-100之间的数字

Lea*_*ner 2 .net c# winforms c#-4.0

您好抱歉这是一个简单的问题,但如果有人可以指导我的代码,将不胜感激.我在Winform中说了50个文本框.所有应该只允许数字值,也只允许1-100.我该如何确保此验证?

我的想法是在使用Ascii值的keypress事件中使用e.Keychar来限制用户只键入数字.另外,我可以确保在属性中的Set中进行此验证吗?但我不知道我是否正确,也不知道正确的代码.请帮我.

Hab*_*bib 5

使用NumericUpDown而不是普通的TextBox盒子进行验证.

NumericUpDown控件包含单个数值,可以通过单击控件的向上或向下按钮来递增或递减.除非将ReadOnly属性设置为true,否则用户还可以输入值.

您可以指定最小和最大数字,它允许用户输入1到100之间的数字,并让它们使用向上和向下按钮.

编辑:如果你想通过代码来做,那么你可以尝试像KeyPress你的情况TextBox:

private void yourTextBox_KeyPress(object sender, KeyPressEventArgs e)
{
    if (!char.IsControl(e.KeyChar)
        && !char.IsDigit(e.KeyChar))
    {
        e.Handled = true;
    }
}
Run Code Online (Sandbox Code Playgroud)

以上可以改进访问.十进制数,但我猜你有这个想法.