C#仅数字文本框控件

vam*_*shi 10 c# textbox .net-3.5

我使用的是C#.NET 3.5,我的项目有问题.在C#Windows应用程序中,我想使a textbox只接受数字.如果用户尝试输入字符,则消息应显示为"请仅输入数字",而在另一个文本框中,它必须接受有效email id消息,如果无效则应显示.它必须显示无效的用户ID.

Ste*_*nev 5

从C#3.5我假设你正在使用WPF.

只需从整数属性到文本框进行双向数据绑定.WPF将自动显示验证错误.

对于电子邮件案例,从在setter中执行Regexp验证的字符串属性进行双向数据绑定,并在验证错误时抛出异常.

在MSDN上查找绑定.


jol*_*lly 5

使用此代码:

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            const char Delete = (char)8;
            e.Handled = !Char.IsDigit(e.KeyChar) && e.KeyChar != Delete;
        }
Run Code Online (Sandbox Code Playgroud)

  • 这不会阻止用户将任何文本粘贴到文本框中。 (2认同)

fjd*_*ont 2

您可能想尝试int.TryParse(string, out int)KeyPress(object, KeyPressEventArgs)事件中检查数值。对于其他问题,您可以使用正则表达式。