在C#WinForm中,在不绑定数据库的前提下,如何让控件combox中只能输入数字和字母啊?

如题,直接说方法和代码就行了,本人比较菜,说的太深奥也看不太懂,能一目了然的话,直接送分!谢谢了!... 如题,直接说方法和代码就行了,本人比较菜,说的太深奥也看不太懂,能一目了然的话,直接送分!谢谢了! 展开
 我来答
苍龙de链
2013-11-18 · TA获得超过4985个赞
知道小有建树答主
回答量:604
采纳率:100%
帮助的人:626万
展开全部
用正则语句进行判断,例如:
//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
尘雨洛烟
2013-11-18 · TA获得超过6203个赞
知道大有可为答主
回答量:3967
采纳率:79%
帮助的人:1008万
展开全部
利用正则表达式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("输入非法字符");
}
追问
首先,谢谢你的回答,很感谢,能帮我把代码修改一下吗?当输入的不是数字和字母的时候,不要MessageBox,而是让comboBox1.Text当前的内容不发生改变,谢谢了,再就是,告诉我怎么限制ComboBox的最小输入字符吗?谢谢!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qinnan851
2013-11-18 · TA获得超过104个赞
知道小有建树答主
回答量:239
采纳率:0%
帮助的人:181万
展开全部
直接用masktextbox设置掩码~非掩码就根本输入不进去了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式