迹忆客 专注技术分享

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

在 C# 中的文本框中仅接受数字

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

本教程将介绍在 C# 中创建一个只接受数字的文本框的方法。


C# 中带有 NumberUpDown 视图的仅数字文本框

NumberUpDown 视图用于从用户使用 C# 获取数字输入。要在 Windows 窗体应用程序中添加 NumberUpDown 视图,我们只需从工具箱中选择 NumberUpDown 并将其拖到我们的窗体中即可。NumberUpDown 视图不会从用户那里获取任何非数字值。它还允许我们使用光标键上下移动一个值。下面的代码示例向我们展示了如何使用 C# 中的 NumberUpDown 视图创建一个仅接受来自用户的数值的文本框。

using System;
using System.Windows.Forms;

namespace textbox_numbers_only {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }

    private void numericUpDown1_KeyPress(object senderObject, KeyPressEventArgs KeyPressEvent) {
      if (!char.IsControl(KeyPressEvent.KeyChar) && !char.IsDigit(KeyPressEvent.KeyChar) &&
          (KeyPressEvent.KeyChar != '.')) {
        KeyPressEvent.Handled = true;
      }
      if ((KeyPressEvent.KeyChar == '.') && ((senderObject as TextBox).Text.IndexOf('.') > -1)) {
        KeyPressEvent.Handled = true;
      }
    }

    private void numericUpDown1_ValueChanged(object sender, EventArgs e) {}
  }
}

在上面的代码中,我们创建了一个文本框,该文本框仅使用 C# 中的 NumberUpDown 视图接受用户的数值。在 numericUpDown1_KeyPress() 函数中,我们添加了对 . 值的检查,以允许用户输入小数点值。此文本框仅接受 2 位数字的数值。


在 C# 中仅带有 TextBox 视图的数字文本框

如果我们不想使用任何专有的视图,我们还可以修改原始的 TextBox 视图以仅接受数字值。我们可以使用 TextBox_KeyPress() 函数内的 KeyPressEventArgs.Handled 属性来指定文本框应处理哪些按键。以下代码示例向我们展示了如何使用 C# 中的 TextBox 视图创建仅接受数值的文本框。

using System;
using System.Windows.Forms;

namespace textbox_numbers_only {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }

    private void textBox1_TextChanged(object sender, EventArgs e) {}
    private void textBox1_KeyPress(object sender, KeyPressEventArgs KeyPressEvent) {
      KeyPressEvent.Handled = !char.IsDigit(KeyPressEvent.KeyChar);
    }
  }
}

在上面的代码中,我们指定了我们的文本框不应使用 textBox1_KeyPress() 函数中的 KeyPressEvent.Handled 属性处理任何非数字值。

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

本文地址:

相关文章

在 C# 中的接口中实现属性

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

本文介绍如何在 C# 中的接口中实现属性。C# 中的接口可以有许多不同的属性,以及指定我们应该如何在其中声明属性可用性的访问修饰符。该接口通常充当不同成员和对象的默认实现。

在 C# 中注释文本块

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

本教程教你如何在 C# 中注释一段文本或代码。作为注解的注释处于更高的抽象级别,编译器在编译 C# 代码时会忽略它。

C# 中的局部类

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

我们可以使用 C# 中的局部类将一个类的定义拆分到多个文件中。C# 中的局部类 partial 关键字在 C# 中指定了部分类。

C# 中的结构体和类之间的区别

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

结构体是驻留在堆栈中的值类型变量,而类是驻留在堆中的引用类型变量。在本教程中,我们将讨论 C# 中的结构体和类之间的区别和相似之处。

在 C# 中销毁对象

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

在 C# 中,我们可以通过给一个对象赋值为空来销毁它。通过在 C# 中分配 null 值来销毁类对象

在 C# 中复制一个对象

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

有两种主要方法可用于在 C# 中创建对象的单独副本,MemberWiseClone()函数和参数化构造函数方法。在 C# 中使用 MemberWiseClone() 方法复制对象

C# 中的 Java final 等效关键字

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

C# 中有两个不同的关键字,它们等效于 Java 中的 final 关键字,用于类和函数的 sealed 关键字以及用于字段的 readonly 关键字。本教程将讨论与 Java 中的 final 关键字等效的 C# 关键字。Java final 关键

扫一扫阅读全部技术教程

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

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便