textbox里只能输入汉字,并且最多只能输入4个汉字,请问在textbox的keyPress事件里怎么用C#写代码

来源:百度知道 编辑:UC知道 时间:2024/06/27 18:24:22

private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if((!char.IsLetter(e.KeyChar)&&textBox1.Text.Length > 4))
{
e.Handled = true;
MessageBox.Show("只能输入4位汉字");
}
}

只见过有JS控制的...SORRY.
-----------------------------
我还以为是WEB>

测试了下.要在提交按钮里写.双击按钮即可产生该事件.

string express = @"^[\u4E00-\u9FA5]{4}$";
Regex r = new Regex(express);
Match m = r.Match(txt1.Text); //txt1为要验证的文本框
if (m.Success)
{//通过验证
messagebox.show("成功");
}
else
{
//没通过验证
messagebox.show("失败");
}
如果写在KeyPress事件中,不好判断其长度.
private void txt1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
string express = @"^[\u4E00-\u9FA5]{4}$";