手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#中winform控制textbox输入只能为数字的方法
C#中winform控制textbox输入只能为数字的方法
摘要:本文实例讲述了C#中winform控制textbox输入只能为数字的方法。分享给大家供大家参考。具体实现方法如下:添加keyPress事件,...

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

C# 屏蔽关键字的实现方法

c# 获取数据库中所有表名称的方法

c#中虚函数的相关使用方法

C#操作注册表的方法

c#中var关键字用法浅谈

WinForm下 TextBox只允许输入数字的小例子

使用C# Winform应用程序获取网页源文件的解决方法

c#之利用API函数实现动画窗体的方法详解

C#中StringBuilder用法以及和String的区别分析

C# 设置系统日期格式的方法

精品推荐
分类导航