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

本文实例讲述了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输入只能为数字的方法

本文地址:  http://www.paobuke.com/develop/c-develop/pbk23202.html

相关内容

.NET C#利用ZXing生成、识别二维码/条形码

C# FileStream读写的文本操作代码分析

C#实现自定义Dictionary类实例

C#开发微信公众号接口开发


C#获取CPU编号的方法

C#线程入门教程之单线程介绍

C#实现合并多个word文档的方法

C#实现中英文混合字符串截取的方法

时间: 2024-08-04 17:28:53

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

C#中Winform窗体Form的关闭按钮变灰色的方法

本文实例讲述了C#中Winform窗体Form的关闭按钮变灰色的方法,对C#程序设计有一定的借鉴价值,分享给大家供大家参考之用.具体方法如下: 主要功能代码如下: [ DllImport ( "USER32.DLL" ) ] public static extern int GetSystemMenu(int hwnd, int bRevert); [ DllImport ( "USER32.DLL" ) ] public static extern int Rem

正则表达式控制Input输入内容 ,js正则验证方法大全

https://blog.csdn.net/xushichang/article/details/4041507 正则表达式控制Input输入内容 2009年04月01日 17:15:00 阅读数:21747 不能输入中文 <input type="text" name="textfield"  onkeyup="this.value=this.value.replace(/[^/da-z_]/ig,'');"/>只能输入 数字和下划

C#的winform中控制TextBox中只能输入数字

private void textBox3_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e) { //阻止从键盘输入键 e.Handled = true; if(e.KeyChar>='0' && e.KeyChar <='9') { e.Handled = false; } } 多条件的: private void TxtUser_KeyPress(object sender, KeyPress

Asp.net控制TextBox只能输入数字

在Asp.net开发中,为了确保数据的正确性,经常要对用户输入的内容进行验证,比如说用户只能输入数字,不能输入中文和英文,这如何实现呢?下面我们来看看.    实现过程,在TextBox控件中加两个属性事件:<asp:TextBox ID="txtName" runat="server" Width="175px" style="ime-mode:disabled" onkeypress="if (event.

WinForm中TextBox 中判断扫描枪输入与键盘输入

本文转载:http://www.cnblogs.com/Hdsome/archive/2011/10/28/2227712.html 提出问题:在收货系统中,常常要用到扫描枪扫描条码输入到TextBox,当条码无法扫描时,需要手工输入.如果是扫描枪输入时,我们将自动去判读条码,而手工输入时,最终需要加按回车键确认后判读条码.这时候我们就要判断输入设备是手工还是扫描枪. 尝试的方法: 1.将TextBox属性设为ReadOnly=true.结果:无法输入. 2.在TextBox的KeyPress事

JavaScript控制输入框中只能输入中文、数字和英文

1.问题背景 遇到这样一个问题:有一个输入框,要求只能输入中文.数字和英文(即过滤特殊字符串) 2.JS代码 function  checkUsername() { //正则表达式 var reg = new RegExp("^[a-zA-Z\d\u4E00-\u9FA5]+$"); //获取输入框中的值 var username = document.getElementById("username").value.trim(); //判断输入框中有内容 if(u

用Jquery控制文本框只能输入数字和字母

只为成功找方法,不为失败找借口! 用Jquery控制文本框只能输入数字和字母 在公司开发WinForm项目时,发现公司自主研发的textbox控件非常强大,可以实现"只能输入数字"."只能输入字母"和"只能输入数字和字母"的三种输入限制,这样就可以精确控制用户输入的内容范围,让"用户永远没有办法输入限定的内容范围之外的其他内容",也就是"用户即使想犯错误也没有机会",这种限制控件输入的方式给了我很大的启发,

C# TextBox中只允许输入数字的方法

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows.Forms;using DevComponents.DotNetBar.Controls; namespace WinDrilling.ErrorJudge.Class{ class ClsTxtOperate { #region TextBoxX控件只能输入数字函数 //只能输入数字函数 p

js 控制文本框只能输入中文、英文、数字等

总而言之:先在<input>里输入onkeyup="value=value.replace(/[^\X]/g,'')" 然后在(/[\X]/g,'')里的X换成你想输入的代码就可以了,中文u4E00-u9FA5,数字0-9,英文a-z\A-Z,其它符号@.点或其它符号.也可以多个,用\隔开就行了. 例如:中英文 + 数字 + @符号 + 点符号   \a-\z\A-\Z0-9\u4E00-\u9FA5\@\. 若想在文本框里不能右键弹出菜单和不能粘贴进复制的信息的话 就要在