基本上我有一台自动售货机,总价将显示在标签中。现在有一个显示货币的组合框,例如 1.00 、 2.00 、 5.00 等。
现在我想用 if 语句来检查从组合框中选择的钱与总价相比是大还是小。
代码不工作
if (cbMoney.SelectedItem < total)
{
MessageBox.Show("Not Enough Money");
}
错误描述:运算符“<”不能应用于“object”和“double”类型的操作数
SelectedItem 是一个对象,需要对其进行解析。
if (double.Parse(cbMoney.SelectedItem.ToSTring()) < total)
{
MessageBox.Show("Not Enough Money");
}
http://msdn.microsoft.com/en-us/library/system.double.parse(v=vs.110).aspx
你们怎么知道总类型?
if (Convert.ToDouble(cbMoney.SelectedItem.ToString()) < Convert.ToDouble(total))
{
MessageBox.Show("Not Enough Money");
}
您正在使用 SelectedItem 对象而不是在检查之前进行转换。
尝试如下:
if (Convert.ToDouble(cbMoney.SelectedItem.ToString()) < total)
{
MessageBox.Show("Not Enough Money");
}