C# 文本框只能输入数字

上百度看了很多都不行!!都是骗人的!!我想要一个可以用的!不要正则表达式的有哪位高手指点一下... 上百度看了很多都不行!!都是骗人的!!
我想要一个可以用的!
不要正则表达式的

有哪位高手指点一下
展开
 我来答
大野瘦子
高粉答主

2019-10-16 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:1227
采纳率:100%
帮助的人:31.8万
展开全部

 代码如下:

调用TextBox的KeyPress事件

private void txtUserId_KeyPress(object sender, KeyPressEventArgs e)

{

//如果输入的不是数字键,也不是回车键、Backspace键,则取消该输入

if (!(Char.IsNumber(e.KeyChar)) && e.KeyChar!=(char)13 && e.KeyChar!=(char)8)

{

e.Handled = true;

}

}

扩展资料:

注意事项

C#文本框输入限制

//只能输入数字和小数点和退格键

    private void txt_KeyPress(object sender, KeyPressEventArgs e)

    {

        if (((int)e.KeyChar < 48 || (int)e.KeyChar > 57) && (int)e.KeyChar != 8 && (int)e.KeyChar != 46)

        {

            e.Handled = true;

        }

    }

    //只能输入数字和退格键

    private void txt_KeyPress(object sender, KeyPressEventArgs e)

    {

        if (!(Char.IsNumber(e.KeyChar)) && e.KeyChar != (char)8)

        {

            e.Handled = true;

        }

    }

    //限制输入只能为数字

    private void txt_KeyPress(object sender, KeyPressEventArgs e)

    {

        if (!(Char.IsNumber(e.KeyChar)) && e.KeyChar != (Char)8)

        {

            e.Handled = true;

        }

    }

    //限制输入不能为中文和全角

    private void txt_KeyPress(object sender, KeyPressEventArgs e)

    {

        int chfrom = Convert.ToInt32("4e00", 16);    //范围(0x4e00~0x9fa5)转换成int(chfrom~chend)

        int chend = Convert.ToInt32("9fa5", 16);

        if (e.KeyChar >= (Char)chfrom && e.KeyChar <= (Char)chend)

        {

            e.Handled = true;

        }

        if (e.KeyChar >= (Char)65281 & (int)e.KeyChar <= (Char)65374)

        {

            e.Handled = true;

        }

    }

    //限制输入只能输入数字和字母,退格键

    private void txt_KeyPress(object sender, KeyPressEventArgs e)

    {

        if ((e.KeyChar >= 'a' && e.KeyChar <= 'z') || (e.KeyChar >= 'A' && e.KeyChar <= 'Z')

            || (e.KeyChar >= '0' && e.KeyChar <= '9') || (e.KeyChar == 8))

        {

            e.Handled = false;

        }

        else

        {

            e.Handled = true;

        }

    }

changyiduU4Q
高粉答主

2019-08-19 · 关注我不会让你失望
知道答主
回答量:264
采纳率:100%
帮助的人:7.9万
展开全部

代码如下:

private void txtNumber_KeyPress(object sender, KeyPressEventArgs e){ if (e.KeyChar == 0x20) e.KeyChar = (char)0;  //禁止空格键

if (e.KeyChar == (char)46) e.KeyChar = (char)0;

if ((e.KeyChar == 0x2D) && (((TextBox)sender).Text.Length == 0)) return;   //处理负数

if (e.KeyChar > 0x20){try{double.Parse(((TextBox)sender).Text + e.KeyChar.ToString());}

catch{e.KeyChar = (char)0;}}}

扩展资料

登录功能代码

public partial class LoginForm : Form
{public LoginForm()
{InitializeComponent();}
//判断是否登录成功

private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e){
//获取用户名

string username = textBox1.Text;
//获取密码

string password = textBox2.Text;
//判断用户名密码是否正确

if ("xiaoming".Equals(username) && "123456".Equals(password)){MessageBox.Show("登录成功!");}

else{MessageBox.Show("登录失败!");}}}

历史发展

C#是微软公司在2000年6月发布的一种新的编程语言,主要由安德斯·海尔斯伯格(Anders Hejlsberg)主持开发,它是第一个面向组件的编程语言,其源码会编译成msil再运行。

它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,并且新增了许多功能及语法,而且它是微软公司.NET windows网络框架的主角。

参考资料来源:百度百科-C#

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友faadf46
高粉答主

2019-07-20 · 说的都是干货,快来关注
知道答主
回答量:4556
采纳率:0%
帮助的人:65.9万
展开全部

1、首先,默认已经创建好了一个工程。

2、然后在窗口中添加一个标签控件和文本框控件,并修改标签的文字为成绩,文本框的name为EdtSorce,text为空。

3、然后选择文本框,并在属性面板中切换到“事件”选项卡,找到onKeyPress事件,点击进入代码编辑窗口。

4、然后在打开的代码窗口中写入以下代码。

5、运行后,效果如下,大家可以发现只有按下数字键,才会有字符在文本框中显示出来,其它按钮都没有反应。

6、如果大家还想允许小数字出现,并且退格键可用,那么还可以如下图所示进行代码修改。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
优游自如
推荐于2017-11-23 · TA获得超过1012个赞
知道小有建树答主
回答量:233
采纳率:0%
帮助的人:182万
展开全部
调用TextBox的KeyPress事件
private void txtUserId_KeyPress(object sender, KeyPressEventArgs e)
{
//如果输入的不是数字键,也不是回车键、Backspace键,则取消该输入
if (!(Char.IsNumber(e.KeyChar)) && e.KeyChar!=(char)13 && e.KeyChar!=(char)8)
{
e.Handled = true;
}
}

最好弄个自定义控件,继承TextBox,重写OnKeyPress事件
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mpijdr
2010-12-18 · TA获得超过610个赞
知道小有建树答主
回答量:449
采纳率:100%
帮助的人:306万
展开全部
function onlyNum(){
var k=window.event.keyCode;
if ((k==46)||(k==8)||(k==189)||(k==109)||(k==190)||(k==110)|| (k>=48 && k<=57)||(k>=96 && k<=105)||(k>=37 && k<=40))
{}
else if(k==13){
window.event.keyCode = 9;
}
else{
window.event.returnValue = false;
}
}

文本框 onkeydown="onlyNum();"

这个JS不是很全面.好像英文状态下可以输入 .

不过够用了,你也可以再查下资料稍微修改一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式