迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

C# 新建一个仅接受数字的文本框

作者:迹忆客 最近更新:2024/01/16 浏览次数:

在制作 Windows 窗体时,某些文本字段只需要一个数字值。例如,如果我们想从用户那里获得电话号码,那么我们将不得不将文本框限制为仅接受数字值。

在本文中,我们将重点介绍构成仅接受数字的文本框的方法。


使用 C# 中的 KeyPressEventArgs 类创建一个仅接受数字的文本框

KeyPressEventArgs 是一个 C# 类,用于指定用户输入的字符按下一个键。它的 KeyChar 属性返回用户键入的字符。在这里,我们使用了 KeyPress 事件将文本框限制为仅数字值。

执行此操作的关键代码如下:

!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && (e.KeyChar != '.');

这里 e 是一个 KeyPressEventArgs 对象,该对象使用 KeyChar 属性来获取输入的键值。

示例代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1 {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }
    private void textBox1_KeyPress(object sender, KeyPressEventArgs e) {
      if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && (e.KeyChar != '.')) {
        e.Handled = true;
      }

      // only allow one decimal point
      if ((e.KeyChar == '.') && ((sender as TextBox).Text.IndexOf('.') > -1)) {
        e.Handled = true;
      }
    }
  }
}
//only allows numeric values in the textbox

 


使用 C# 中的 Regex.IsMatch() 方法创建一个仅接受数字的文本框 Textbox

在 C# 中,我们可以使用正则表达式来检查各种模式。正则表达式是执行特定操作的特定模式。RegularExpressions 是一个 C# 类,其中包含 Regex.IsMatch()方法的定义。在 C# 中,我们使用 ^[0-9]+$^\d+$ 正则表达式来检查字符串是否为数字。

此方法的正确语法如下:

Regex.IsMatch(StringName, @"Expression");

示例代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1 {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }
    private void textBox1_TextChanged(object sender, EventArgs e) {
      if (System.Text.RegularExpressions.Regex.IsMatch(textBox1.Text, "  ^ [0-9]")) {
        textBox1.Text = "";
      }
    }
  }
}
//A textbox created that only accepts numbers.

 


使用 NumericUpDown 方法创建一个仅接受数字的文本框 Textbox

NumericUpDown 为用户提供了使用文本框提供的向上和向下按钮输入数值的界面。你可以简单地从工具箱中拖放 NumericUpDown 来创建仅接受数字的文本框。

你还可以动态创建一个 NumericUpDown 对象。生成 NumericUpDown 的代码如下:

private System.Windows.Forms.NumericUpDown numericUpDown;
this.numericUpDown = new System.Windows.Forms.NumericUpDown();

它具有几个属性,你可以通过打开属性窗口来更改。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 C# 中获取组合框的选定值

发布时间:2024/01/20 浏览次数:151 分类:编程语言

本教程展示了如何在 C# 中获取 ComboBox 的选定值。在本教程中,你将学习在 C# 中获取 ComboBox 的选定文本和值的不同方法。获取 ComboBox 控件的选定值的最常用方法是使用 C# 在按钮单击事件中获取

在 C# 中创建一个 UDP 服务器

发布时间:2024/01/20 浏览次数:158 分类:编程语言

在本文中,我们将学习如何在 C# 中创建 UDP 服务器。本文将展示如何在 C# 中创建一个简单的 UDP 服务器。在 C# 中创建一个 UDP 服务器

C# 中的 LINQ 分组

发布时间:2024/01/20 浏览次数:51 分类:编程语言

LINQ 中的 group by 用于按 C# 中的某个公共值对对象序列进行分组 C# 中的 LINQ 分组 LINQ 将类似 SQL 的查询功能与 C# 中的数据结构集成在一起。

使用 C# 在 LINQ 查询中按多列分组

发布时间:2024/01/20 浏览次数:167 分类:编程语言

这是一篇关于 LINQ 查询的使用以及我们如何使用 LINQ 查询按列分组的文章。本文简要介绍了使用 C# 进行的 LINQ 查询。此外,它还讨论了如何使用 LINQ 查询按多列对结果进行分组。

在 C# 中捕获多个异常

发布时间:2024/01/20 浏览次数:135 分类:编程语言

有两种主要方法可用于捕获 C# 中的多个异常,即 Exception 类和 catch 子句中的 if 语句。使用 C# 中的 Exception 类捕获多个异常 Exception 类用于表示 C# 中的一般异常。

C# 中为无效参数或参数引发的异常类型

发布时间:2024/01/20 浏览次数:71 分类:编程语言

本教程将教你如何在 C# 中为无效参数或参数抛出不同类型的异常。异常提供有关 C# 程序中的运行时错误或预期不会发生或违反系统/应用程序约束的条件的信息。在本教程中,你将学习与无效参

C# 中的异常列表

发布时间:2024/01/20 浏览次数:128 分类:编程语言

我们将查看本文中可能引发的 C# 异常。System Exception 类是 C# 编程语言中预定义的异常类,可用于编程。选择代码中可能出现的异常并将其插入到适当的 catch 块中。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便