验证c#.net中的文本框
本文关键字:文本 net 验证 | 更新日期: 2023-09-27 18:11:02
嗨,我想设置我的文本框只与字母我已经尝试了下面的代码,它的工作良好的键盘键。但是,如果我按numpad键数字,它是接受数字,谁能帮助我,非常感激,谢谢。
bool isvalid = true;
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if ((e.KeyValue <65 || e.KeyValue > 90) && (e.KeyValue<97||e.KeyValue>122) e.KeyValue != 8))
{
isvalid = false;
MessageBox.Show("only alphabets");
}
else
{
isvalid = true;
}
}
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (isvalid == false)
{
e.Handled = true;
}
else
{
e.Handled = false;
}
}
使用Regex.IsMatch
属性
可以使用以下代码:
private void txtAlphaOnly_TextChanged(object sender, EventArgs e)
{
if (System.Text.RegularExpressions.Regex.IsMatch("^[a-zA-Z]", txtAlphaOnly.Text))
{
MessageBox.Show("Alphabets Only Allowed");
}
}
MSDN:
http://msdn.microsoft.com/en-IN/library/system.text.regularexpressions.regex.ismatch.aspx在KeyDown事件中,您将在e.p ekeyvalue上得到的是键盘上的键的代码,而不是字符,参见键枚举。这个条件对A-Z和A-Z都成立。
(e.KeyValue >= Keys.A && e.KeyValue <= Keys.Z)