-1

我收到错误消息“未处理格式异常。” 和“输入字符串的格式不正确。” 在这一行 temp_i = float.Parse(textBox3.Text); 问题是什么?

//button 2 calculate button
private void button1_Click(object sender, EventArgs e)
{
  float temp_e;
  float temp_i;
  float temp_r;
  float temp_p;

  //*******************************************************
  // Resistance = Volts / Current
  //*******************************************************
  if (IsNumeric(textBox1.Text) &&
  IsNumeric(textBox2.Text) &&
  textBox3.Text == (""))
  {
    temp_e = float.Parse(textBox1.Text); //convert string to number
    temp_i = float.Parse(textBox3.Text); //convert string to number

    temp_r = temp_e / temp_i; //display 1st result
    textBox2.Text = Convert.ToString(temp_r);  //post result resistance (R)

    //calculate power
    temp_p = temp_e * temp_i;
    textBox5.Text = Convert.ToString(temp_p);

    //display 2nd result
    textBox4.Text = Convert.ToString(temp_r) + " * " + Convert.ToString(temp_i) + " = " + Convert.ToString(temp_p) + " watts";
  }'
4

3 回答 3

4
temp_i = float.Parse(textBox3.Text); //convert string to numbe

textBox3.Text肯定包含 "" 因为它在你的 if 条件下。

您无法将“”解析为浮动。

于 2012-04-23T10:59:32.170 回答
0

问题应该很明显;textbox3.Text包含一个无法传递给的值float.Parse。在您的情况下,一个空字符串(基于if它上面的!

于 2012-04-23T10:59:46.513 回答
0

您检查文本框是否为空,如果是,您是否正在尝试转换为浮动?检查你的逻辑。

我猜你试图这样做:

temp_i = float.Parse(textBox2.Text); 

哪个更有意义:)

于 2012-04-23T11:01:38.140 回答