下面的代码是针对数量的。产品价格乘以数量然后得到总数
If CheckedListBox1.Text = "1" Then
TextBox5.Text = 1
TextBox4.Text = TextBox5.Text * TextBox4.Text<<<<<< This part keeps saying "Conversion from string "" to type 'Double' is not valid". Please help!
Exit Sub
End If
If CheckedListBox1.Text = "2" Then
TextBox5.Text = 2
TextBox4.Text = TextBox4.Text * TextBox5.Text
Exit Sub
End If
If CheckedListBox1.Text = "3" Then
TextBox5.Text = 3
TextBox4.Text = TextBox5.Text * TextBox4.Text
Exit Sub
End If
If CheckedListBox1.Text = "4" Then
TextBox5.Text = 4
TextBox4.Text = TextBox5.Text * TextBox4.Text
Exit Sub
End If
答案 0 :(得分:0)
更改此行代码(以及各种if语句中的所有其他代码)
TextBox4.Text = TextBox5.Text * TextBox4.Text
到此
TextBox4.Text = (CDbl(TextBox5.Text) * CDbl(TextBox4.Text)).ToString()
这样,您的文本在被操作之前被转换为double
,然后一旦您的数学运算完成,结果将通过.ToString()
函数转换回文本
注意:如果您使用文本框作为用户输入数字数据,您还必须处理非数字输入并禁止用户输入除数字和小数点之外的任何内容。 (这包括处理@Jeroen所指出的空字符串)我建议您考虑使用NumericUpDown控件