WINFORM限制textbox只能输入数字[转]
首先引用
using System.Text.RegularExpressions;
给TextBox添加KeyPress事件,代码如下:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if ((Convert.ToInt32(e.KeyChar) == 8))
{
e.Handled = false;
}
else
{
Regex numRegex = new Regex(@"^(-?[0-9]*[.]*[0-9]*)$");
Match Result = numRegex.Match(Convert.ToString(e.KeyChar));
if (Result.Success)
{
e.Handled = false;
}
else
{
e.Handled = true;
}
}
}
此时还是不完全的,因为这时候单击右键的时候可以将非数字文字粘贴到textbox中去,在vs2005中我们只要这样设置就可以:
this.textBox1.ShortcutsEnabled = false;