C#中TEXTBOX验证问题

来源:百度知道 编辑:UC知道 时间:2024/09/21 00:38:14
我想达到的效果是,判断输入是否是字母。要是输入汉字或者数字就提示错误。
也就是只能输入A-Z。不用正则表达式。

bool flag = false;

String[] array = {"a",...,"z","A",...,"Z"}

String textValue = textBox.value;

int length = textValue.length();

for(int index=0;index<length;index++){
string word = textValue.subString(0,index);
for(int i=0;i<array.length;i++){
if(word = array[i]){
flag = false;
}

}

}

if(flag == true){
"输入合法"
}else{
"输入不合法"
}

为什么不用正则?
正则对方便简单

可以在KeyDown事件中验证。
if ((int)e.KeyCode >= (int)Keys.A && (int)e.KeyCode <= (int)Keys.Z)
{ }
else
{
throw new Exception("Error");
}

textBox1 的 KeyPress事件

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar >= 'A' && e.KeyChar <= 'Z' || e.KeyChar == 8)