3个回答
展开全部
限制长度:设置maxlength属性
屏蔽非数字键输入:添加keypress事件
private void textBox1_KeyPress(object sender, KeyPressEventArgs e){
e.Handled = !(Char.IsNumber(e.KeyChar) || e.KeyChar == '\b');
}
替换全角(中文)数字字符为半角(英文)字符:添加textchange事件
private void textBox1_TextChanged(object sender, EventArgs e){
for (int i=0;i< textBox1.Text.Length; ++i)
if (textBox1.Text[i] >= '0' && textBox1.Text[i] <= '9')
textBox1.Text = textBox1.Text.Replace(textBox1.Text[i], (char)(textBox1.Text[i] - '0' + '0'));
}
门道我说不出多少,办法也比较笨,看看是否符合要求
屏蔽非数字键输入:添加keypress事件
private void textBox1_KeyPress(object sender, KeyPressEventArgs e){
e.Handled = !(Char.IsNumber(e.KeyChar) || e.KeyChar == '\b');
}
替换全角(中文)数字字符为半角(英文)字符:添加textchange事件
private void textBox1_TextChanged(object sender, EventArgs e){
for (int i=0;i< textBox1.Text.Length; ++i)
if (textBox1.Text[i] >= '0' && textBox1.Text[i] <= '9')
textBox1.Text = textBox1.Text.Replace(textBox1.Text[i], (char)(textBox1.Text[i] - '0' + '0'));
}
门道我说不出多少,办法也比较笨,看看是否符合要求
展开全部
正则表达式
[0-9]{0,10}
这能输入0到9 的半角数字 ,位数为0到10位
this 表示引用类的当前实例。
[0-9]{0,10}
这能输入0到9 的半角数字 ,位数为0到10位
this 表示引用类的当前实例。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
通过判断输入字符的长度和ASC码来判断,在TextChanged事件中检查输入字符的ASC码是否是数字对应的,如果非这十个数字的话就对话框提示或者直接要求重新输入得了。不过VS有全角半角的BUG,要注意。this就是这个窗体的意思,相当于VB中的Me.你也可以理解为你的窗体。不写也行的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询