我想检验一下Textbox里面的数据是否大于10,如果大于10,就输出"aa",少于10,就输出bb界面就是两个Textbox和一个button1;代码如下:
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;namespace WindowsFormsApplication9
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
int a;
a = Convert.ToInt32(textBox1.Text);
if (a > 10)
textBox2.Text = "aa";
else
textBox2.Text = "bb";
}
}
}问题出来了:我输入数字,程序完全正常,可是,我输入英文,它就弹出:输入字符串格式不正确
请问哥哥为什么啊?怎么解决啊??万一人家输入英文,那程序就有危险啦!
还有,我发不了图啊?我的图的URL地址太长,请问在CSDN论坛怎么样发图啊??
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;namespace WindowsFormsApplication9
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
int a;
a = Convert.ToInt32(textBox1.Text);
if (a > 10)
textBox2.Text = "aa";
else
textBox2.Text = "bb";
}
}
}问题出来了:我输入数字,程序完全正常,可是,我输入英文,它就弹出:输入字符串格式不正确
请问哥哥为什么啊?怎么解决啊??万一人家输入英文,那程序就有危险啦!
还有,我发不了图啊?我的图的URL地址太长,请问在CSDN论坛怎么样发图啊??
{
int a = int.Parse(textBox1.Text);
if (a > 10)
...
}
catch
{
MessageBox.Show("输入的不是整数!");
}
{
int a;
try
{
a = Convert.ToInt32(textBox1.Text);
if (a > 10)
textBox2.Text = "aa";
else
textBox2.Text = "bb";
}
catch
{
}
}
/// <summary>
/// 判断某个字符串是否为数值
/// </summary>
/// <param name="str">要检查的字符串</param>
/// <param name="ignoreComma">忽略指定字符</param>
/// <param name="specialChar">指定字符</param>
/// <returns></returns>
public static bool IsOnlyNumber(string str, bool ignoreSpecialChar, char specialChar)
{
if (String.IsNullOrEmpty(str)) return false;
if (ignoreSpecialChar) str = str.Replace(specialChar.ToString(), "");
foreach (char ch in str)
{
if (!Char.IsNumber(ch)) return false;
}
return true;
}
{
int a = Convert.ToInt32(textBox1.Text);
if (a > 10)
textBox2.Text = "aa";
else
textBox2.Text = "bb";
}
catch
{
MessageBox.Show("输入的不是数字!");
}
此问题:显示转换出错.
加异常处理如果不是数字,就提示错误
web的话,可以设置输入格式winform好像也可以是一个idemode属性