C -WinForm-Winform TextBox中只能输入数字的几种常用方法...

在WinForm的TextBox中,限制只能输入数字有几种常用的方法。下面将逐一介绍这些方法,并提供相应的案例说明。

方法一:使用KeyPress事件

可通过创建KeyPress事件来实现限制只能输入数字的功能。在事件处理程序中,可以通过判断输入的字符是否为数字,然后决定是否允许输入。

案例说明:

```csharp

// 在WinForm窗体中添加一个TextBox控件,并注册KeyPress事件

private void textBox_KeyPress(object sender, KeyPressEventArgs e)

{

// 判断输入的字符是否为数字或退格键

if (!char.IsDigit(e.KeyChar) && e.KeyChar != (char)Keys.Back)

{

e.Handled = true; // 阻止输入

}

}

```

方法二:使用TextChanged事件

可通过创建TextChanged事件来实现限制只能输入数字的功能。在事件处理程序中,可以通过判断TextBox中的文本是否为数字,然后决定是否清除非数字的字符。

案例说明:

```csharp

// 在WinForm窗体中添加一个TextBox控件,并注册TextChanged事件

private void textBox_TextChanged(object sender, EventArgs e)

{

TextBox textBox = (TextBox)sender;

string text = textBox.Text;

// 判断TextBox中的文本是否为数字

if (!string.IsNullOrEmpty(text) && !int.TryParse(text, out _))

{

textBox.Text = ""; // 清空文本

}

}

```

方法三:使用正则表达式

可通过使用正则表达式来实现限制只能输入数字的功能。在KeyPress事件中,通过正则表达式匹配输入的字符,然后决定是否允许输入。

案例说明:

```csharp

// 引入System.Text.RegularExpressions命名空间

using System.Text.RegularExpressions;

// 在WinForm窗体中添加一个TextBox控件,并注册KeyPress事件

private void textBox_KeyPress(object sender, KeyPressEventArgs e)

{

// 使用正则表达式匹配输入的字符

Regex regex = new Regex(@"[^\d\b]"); // 匹配除数字和退格键外的字符

if (regex.IsMatch(e.KeyChar.ToString()))

{

e.Handled = true; // 阻止输入

}

}

```

这些方法都能实现在WinForm TextBox中限制只能输入数字的功能。选择使用其中一种方法即可,根据实际情况选择最适合的方法。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.37seo.cn/

点赞(68) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部