C#中winform控制textbox输入只能为数字的方法

作者:shichen2014 时间:2023-06-26 12:09:03 

本文实例讲述了C#中winform控制textbox输入只能为数字的方法。分享给大家供大家参考。具体实现方法如下:

添加keyPress事件,控制键盘输入只能是自然数:


/// <summary>
/// 控制键盘输入只能是自然数
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void textbox1_KeyPress(object sender, KeyPressEventArgs e)
{
// 允许输入:数字、退格键(8)、全选(1)、复制(3)、粘贴(22)
if (!Char.IsDigit(e.KeyChar) && e.KeyChar != 8 &&
e.KeyChar != 1 && e.KeyChar != 3 && e.KeyChar != 22)
{
e.Handled = true;
}
}

但是这样不能避免粘贴文字里含有非数字字符的情况,可以添加TextChanged事件进行控制:


/// <summary>
/// 粘贴时过滤不是数字的字符
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void textbox1_TextChanged(object sender, EventArgs e)
{
var reg = new Regex("^[0-9]*$");
var str = textbox1.Text.Trim();
var sb = new StringBuilder();
if (!reg.IsMatch(str))
{
for (int i = 0; i < str.Length; i++)
{
if (reg.IsMatch(str[i].ToString()))
{
sb.Append(str[i].ToString());
}
}
textbox1.Text = sb.ToString();
//定义输入焦点在最后一个字符
textbox1.SelectionStart = textbox1.Text.Length;
}
}

希望本文所述对大家的C#程序设计有所帮助。

标签:C#,winform,textbox
0
投稿

猜你喜欢

  • Android利用BitMap获得图片像素数据的方法

    2023-06-19 15:50:47
  • C# cmd中修改显示(显示进度变化效果)的方法

    2023-11-02 13:55:34
  • Unity3D实现鼠标控制视角转动

    2023-11-22 21:18:46
  • Java基于HttpClient实现RPC的示例

    2023-10-29 15:55:02
  • Android开发中MotionEvent坐标获取方法分析

    2022-03-29 02:43:42
  • Android显示网络图片实例

    2022-11-02 14:13:31
  • Android多媒体应用使用MediaPlayer播放音频

    2023-07-08 15:37:52
  • Android添加水印的正确方法 只要三步!

    2022-08-07 16:48:15
  • Java继承Thread类创建线程类示例

    2023-08-04 20:27:08
  • Android编程判断网络是否可用及调用系统设置项的方法

    2023-08-14 13:05:22
  • Android的异步任务AsyncTask详解

    2021-10-13 02:58:28
  • java实现爬取知乎用户基本信息

    2023-11-26 03:45:18
  • springboot项目中jackson-序列化-处理 NULL教程

    2022-11-03 14:36:21
  • 解决Android Studio导入项目非常慢的办法

    2022-12-07 19:44:31
  • C语言中各种操作符的详细介绍(纯干货!)

    2022-07-22 08:34:40
  • java操作solr实现查询功能的实例

    2023-08-04 10:41:34
  • 安卓版微信小程序跳一跳辅助

    2022-08-30 13:44:20
  • Java泛型机制必要性及原理解析

    2022-09-30 02:21:41
  • 教你如何使用Java8实现菜单树形数据

    2022-09-11 12:29:22
  • C#如何通过匿名类直接使用访问JSON数据详解

    2023-07-20 12:31:53
  • asp之家 软件编程 m.aspxhome.com