C#如限制用户只能输入字母和数字

qq635115782 2012-03-20 08:36:24
怎么让用户输入的密码的时候不能调用输入法呢?
还有有正则表达式怎么判断用户输入的是字母或者数字呢?顺便解释下正则表达式的用处吧!~
问题比较多,但都是比较简单的吧。分也很多哟!~
...全文
1621 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
闪耀的瞬间 2012-11-16
  • 打赏
  • 举报
回复
1.设置textmode=password,就不能用输入法了 2.楼上提供的这个地址:http://topic.csdn.net/u/20120228/11/88a6fd52-de02-4c3e-9f97-a1ffe2fbab24.html 正则运算比较多,具体的你自己去看了
csdn_风中雪狼 2012-11-16
  • 打赏
  • 举报
回复
在KeyPress事件里判断
wanmeirensheng 2012-11-16
  • 打赏
  • 举报
回复
我来学习一下
  • 打赏
  • 举报
回复
將TextBox的Imode設置為Disable,這樣就無法調用輸入法了.
wpamn_c 2012-11-16
  • 打赏
  • 举报
回复
lele1028265767 2012-03-21
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 chinajiyong 的回复:]

1、2两个就不回答了,我是来回答第三个问题的,包你满意,自己总结的
http://topic.csdn.net/u/20120228/11/88a6fd52-de02-4c3e-9f97-a1ffe2fbab24.html
[/Quote]
全被回答了···我++1111
lilin8905 2012-03-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 caozhy 的回复:]

if (!RegEx.IsMatch(textbox1.Text, @"^[A-Za-z0-9]+$")) ...
[/Quote]

++
liduoduo 2012-03-21
  • 打赏
  • 举报
回复
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (!char.IsDigit(e.KeyChar))
if (!char.IsLetter(e.KeyChar))
{
MessageBox.Show("只能输入数字或英文字母", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
e.Handled = true;
}

}
allen0118 2012-03-21
  • 打赏
  • 举报
回复
if (!RegEx.IsMatch(textbox1.Text, @"^[A-Za-z0-9]+$"))

色拉油 2012-03-21
  • 打赏
  • 举报
回复
或者在keyup事件中判断,还有把复制功能干掉
色拉油 2012-03-21
  • 打赏
  • 举报
回复
怎么让用户输入的密码的时候不能调用输入法呢?
用了textmode=password后,就不能用输入法了

还有有正则表达式怎么判断用户输入的是字母或者数字呢?
正则表达式只能在你提交的时候判断不对,或者把用户输入错误的过滤掉,建议用用户体验好些的办法,限制键盘输入字符是一种好些的方式
EnForGrass 2012-03-20
  • 打赏
  • 举报
回复
1、2两个就不回答了,我是来回答第三个问题的,包你满意,自己总结的
http://topic.csdn.net/u/20120228/11/88a6fd52-de02-4c3e-9f97-a1ffe2fbab24.html
  • 打赏
  • 举报
回复
建议你拦截键盘按键,直接就是不能输入别的东西
porschev 2012-03-20
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 porschev 的回复:]
用正则判断是2楼给出的,

不让用户切换输入法可以把TextBox的ImeMode后设为Close

不过改变ImeMode属性后还是可以复制进去的。。。还是和正则结合一下
[/Quote]

ImeMode设为Disable
hetengfei_ 2012-03-20
  • 打赏
  • 举报
回复
实在不行就用 Key_Up 事件。取 e.KeyCode
threenewbee 2012-03-20
  • 打赏
  • 举报
回复
if (!RegEx.IsMatch(textbox1.Text, "^[A-Za-z0-9]*$")) ...
最好这样,否则文本框为空会有问题。
porschev 2012-03-20
  • 打赏
  • 举报
回复

用正则判断是2楼给出的,

不让用户切换输入法可以把TextBox的ImeMode后设为Close

不过改变ImeMode属性后还是可以复制进去的。。。还是和正则结合一下
threenewbee 2012-03-20
  • 打赏
  • 举报
回复
if (!RegEx.IsMatch(textbox1.Text, @"^[A-Za-z0-9]+$")) ...
稻庄 2012-03-20
  • 打赏
  • 举报
回复
其实没必要一定作明显地限制。用户文明使用即可。

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧