在textBox中输入数字只能是1-12 且个位数前面补0
private void txtMonth_TextChanged(object sender, EventArgs e)
{
if (!System.Text.RegularExpressions.Regex.IsMatch(txtMonth.Text, @"^\d*$"))
{
txtMonth.Undo();
}
if (Regex.IsMatch(txtMonth.Text.Trim(), @"^([0-9]*|1[0-2])$"))
{
if (txtMonth.Text.Length == 2)
{
txtMonth.Text = txtMonth.Text;
}
else if (txtMonth.Text.Length == 1)
{
txtMonth.Text = 0 + txtMonth.Text;
}
}
else
{
txtMonth.Text = "";
}
}
要求:1、输入只能是数字
2、输入的数字是1到12的
3、假如输入的月份是基数位在前面补零也就是输入1显示0
C#?winform
C#
------解决方案--------------------private void txtMonth_TextChanged(object sender, EventArgs e)
{
Regex reg=new Regex(@"^0?[1-9]
------解决方案--------------------
1[0-2]$");
if (!reg.IsMatch(txtMonth.Text))
{
txtMonth.Undo();
}
if (txtMonth.Text.Length == 1)
{
txtMonth.Text =txtMonth.Text.PadLeft(2,'0');
}
}
------解决方案--------------------1,2
private void txtMonth_TextChanged(object sender, EventArgs e)
{
if (!Regex.IsMatch(txtMonth.Text.Trim(), @"^([0-9]
------解决方案--------------------1[0-2])$"))
{
txtMonth.Text =