FormatException在C#中未处理

时间:2016-04-05 16:10:33

标签: c#

我正在学习C#,我正在尝试创建一个简单的项目来学习一些控件。我正在编写我的项目,就像我的书一样,但是我收到了一个错误。 谁能帮助我? 谢谢......

错误:mscorlib.dll中出现未处理的“System.FormatException”类型异常 附加信息:输入字符串的格式不正确。

我的代码:

private void button1_Click(object sender, EventArgs e)
    {
        int sum = 0;
        float average = 0;
        sum += Convert.ToInt32(textBox1.Text);
        sum += Convert.ToInt32(textBox2.Text);
        sum += Convert.ToInt32(textBox3.Text);
        average = (float)sum / 3;
        textBox4.Text = average.ToString();
    }

My project

2 个答案:

答案 0 :(得分:0)

可能是由于值放在TextBox中。

正如伊恩在评论中所说,调试TextBox.Text,你可能会找到罪魁祸首。

有关详细信息,请查看this previous question

非常有用

该问题的答案之一给出了使用TryParse()

的想法
int a = 0;
if (!int.TryParse(TextBox.Text, out a))
{
    // Couldn't parse input to an integer, show a message perhaps?
}

答案 1 :(得分:0)

见下面的代码:

private void button1_Click(object sender, EventArgs e)
{
  try
  {
    int sum = 0;
    float average = 0;
    sum += Convert.ToInt32(textBox1.Text);
    sum += Convert.ToInt32(textBox2.Text);
    sum += Convert.ToInt32(textBox3.Text);
    average = (float)sum / 3;
    textBox4.Text = average.ToString();
  }
  catch(FormatException exc)
  {
    textBox4.Text = "ERROR";
  }
}