读书人

C# winform,该怎么处理

发布时间: 2013-01-17 10:28:55 作者: rapoo

C# winform
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(), @"^([1-9]|1[0-2])$"))
{
txtMonth.Text = txtMonth.Text;
}
else
{
txtMonth.Undo();
}
这个程序实现的是输入数字1-12之间的数据,但是假如我输入14或者别的二位数字在else语句处就会报异常说是栈溢出了。请给位帮帮忙啊 c# winform
[解决办法]
Undo会调用txtMonth_TextChanged 死循环了。
[解决办法]
用textBox1.Text = ""; 清空TextBox吧,可以MessageBox一个信息。
[解决办法]
else 直接把txtmonth 清空看看,
看代码应该是限制输入月份的,
为什么不用 combox 呢
[解决办法]

引用:
用textBox1.Text = ""; 清空TextBox吧,可以MessageBox一个信息。


正解!
[解决办法]
引用:
引用:用textBox1.Text = ""; 清空TextBox吧,可以MessageBox一个信息。

正解!

读书人网 >C#

热点推荐