C# Winform 用正则让文本框只能输入数字及格式化文本内容
1.用正则表达式让文本框只能输入数字
先导入 using System.Text.RegularExpressions;
在文本框的KeyPress事件下加入一下代码
第一种方法
if (!Char.IsNumber(e.KeyChar)) { e.Handled = true; }
或者
 if ((e.KeyChar >= '0' && e.KeyChar <= '9') || ((Keys)e.KeyChar == Keys.Back))
            {
                e.Handled = false;
            }
            else
            {
                e.Handled = true;
            }
 
第二种方法
if ((Convert.ToInt32(e.KeyChar) ==8))
{
e.Handled =false;
}
else
{
Regex regex =new Regex(@"^(-?[0-9]*[.]*[0-9]*)$");
Match result = regex.Match(Convert.ToString(e.KeyChar));
if(result.Success)
{
e.Handled =false;
}
else
{
e.Handled =true;
}
}
2.格式化文本框里面的数字(12位数字补0)
int num = Convert.ToInt32(this.TextBox1.Text);
string result = string.Format("{0:000000000000}", num);//在Format里面设置数字的位数
string result = string.Format("{0:000000000000}", num);//在Format里面设置数字的位数
 
                    
                 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号