在C#WinForm中,在不绑定数据库的前提下,如何让控件combox中只能输入数字和字母啊?
如题,直接说方法和代码就行了,本人比较菜,说的太深奥也看不太懂,能一目了然的话,直接送分!谢谢了!...
如题,直接说方法和代码就行了,本人比较菜,说的太深奥也看不太懂,能一目了然的话,直接送分!谢谢了!
展开
3个回答
展开全部
用正则语句进行判断,例如:
//C#调用正则方法
//"^[A-Za-z0-9]+$",为正则语句只能输入字母和数字
Regex reg = new Regex(@"^[A-Za-z0-9]+$");
//要加上一个是否为空的判断
if (this.txtName.Text != "")
{
//判断输入的是否是数字和字母,是的话执行你要的操作
if (reg.IsMatch(this.txtName.Text))
{
MessageBox.Show("符合条件!");
}
//不是的话弹出提示
else
{
MessageBox.Show("用户名只能为字母、数字和下划线!");
}
}
//C#调用正则方法
//"^[A-Za-z0-9]+$",为正则语句只能输入字母和数字
Regex reg = new Regex(@"^[A-Za-z0-9]+$");
//要加上一个是否为空的判断
if (this.txtName.Text != "")
{
//判断输入的是否是数字和字母,是的话执行你要的操作
if (reg.IsMatch(this.txtName.Text))
{
MessageBox.Show("符合条件!");
}
//不是的话弹出提示
else
{
MessageBox.Show("用户名只能为字母、数字和下划线!");
}
}
更多追问追答
追问
首先,谢谢你的回答,能告诉我怎么限制ComboBox的最小输入字符吗?谢谢!
追答
有最大输入字符的属性,但是控制最小好像没有直接的属性哎。
因为输入总是从最没有开始输入的,combox没法得知什么时候或说是否已经输入完,所以手动判断吧。
比如输入完成失去焦点或者是点击提交时,判断combox里的字符串长度是否符合你对于最小字符的定义。
判断字符串的长度:string.length
展开全部
利用正则表达式string regx="^[A-Za-z0-9]+$"进行判断,代码如下:
private void comboBox1_TextChanged(object sender, EventArgs e)
{
string strReg = "^[A-Za-z0-9]+$";
Regex regx = new Regex(strReg);
if (!regx.IsMatch(comboBox1.Text))
MessageBox.Show("输入非法字符");
}
private void comboBox1_TextChanged(object sender, EventArgs e)
{
string strReg = "^[A-Za-z0-9]+$";
Regex regx = new Regex(strReg);
if (!regx.IsMatch(comboBox1.Text))
MessageBox.Show("输入非法字符");
}
追问
首先,谢谢你的回答,很感谢,能帮我把代码修改一下吗?当输入的不是数字和字母的时候,不要MessageBox,而是让comboBox1.Text当前的内容不发生改变,谢谢了,再就是,告诉我怎么限制ComboBox的最小输入字符吗?谢谢!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接用masktextbox设置掩码~非掩码就根本输入不进去了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询