如何使textbox只能输入数字和小数点
比如要实现两个textbox,在里面输入数字,按下button时在另一个textbox中显示两个数的和
添加控件之后的代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
//在此加入实现相加的代码
}
}
}
现在想要只让textbox只接受数字和小数点
google了一下,找到如下代码:
//KeyPress事件:当控件获得焦点,并且用户按下且释放键盘上的键后发生
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)//文本框只接受数字的输入和小数点
{
//IsNumber:指定字符串中位于指定位置的字符是否属于数字类别
//IsPunctuation:指定字符串中位于指定位置的字符是否属于标点符号类别
//IsControl:指定字符串中位于指定位置的字符是否属于控制字符类别
if (!Char.IsNumber(e.KeyChar) && !Char.IsPunctuation(e.KeyChar) && !Char.IsControl(e.KeyChar))
{
e.Handled = true; //获取或设置一个值,指示是否处理过System.Windows.Forms.Control.KeyPress事件
}
else if (Char.IsPunctuation(e.KeyChar))
{
if (e.KeyChar == '.')
{
if (((TextBox)sender).Text.LastIndexOf('.') != -1)
{
e.Handled = true;
}
}
else
{
e.Handled = true;
}
}
}
请问:1、Handled是什么属性?
2、我找到的这段代码应该加入什么位置?还要加什么控件不?
------解决方案--------------------1、Handled属性 --如果事件已完整地被处理,则为 true;否则为 false。
2、那个代码加到TextBox1_TextChanged 下!
------解决方案--------------------不好意思,没看清要求.
当你要限制使textbox只能输入数字和小数点时,要这样写.
private void button1_Click(object sender, EventArgs e)
{
///变量先初始化
int sum = 0;
int number1 = 0;
int number2 = 0;
///判断是否成功转换成数字
if (int.TryParse(textBox1.Text, out number1))//int number1 = int.Parse(textBox1.Text);
{
MessageBox.Show("success");
}
else
{
"Error,please try again.";
}
if (int.TryParse(textBox2.Text, out number2))//int number1 = int.Parse(textBox1.Text);
{
MessageBox.Show("success");
}
else
{
"Error,please try again.";
}//int number2 = int.Parse(textBox2.Text);
sum = number1 + number2;
textBox3.Text = sum.ToString();
}
快点给分啊,吼吼~~~~~~
------解决方案--------------------在TextBox的KeyPress事件中输入如下代码
private void textBoxYMaxScale_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar >= 48 && e.KeyChar <= 57)
{
//为数字时
}
else if (e.KeyChar == 8)
{
//为删除键时
}
else if (e.KeyChar == 46)
{
//为点时
}
else
{