无法从';转换;双';到';字符串'->;列表视图子项
本文关键字:列表 gt 视图 #39- 转换 字符串 | 更新日期: 2023-09-27 18:12:59
我真的很难处理这个问题。这段代码假设是求解一个总付款,并将其放入小计TextBox
中,但当我试图将其转换为double
时(因为价格有decimals
(,这就是它所想到的。我试过int
,它没有任何问题。
有什么解决方案吗?
double i = 0;
double j = 0;
double k = 0;
i = 0;
j = 0;
k = 0;
try
{
j = lstvProds.Items.Count;
for (i = 0; i <= j - 1; i++)
{
k = k + Convert.ToDouble(lstvProds.Items[i].SubItems[4].Text);
}
//double l = Convert.ToDouble(k);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
return k;
为了清楚起见,我将注释转换为答案,并详细说明潜在问题:
需要明确的是:问题是编译错误,而不是运行时的异常。
原因如下:
lstvProds.Items[i]
Items[]运算符重载了一个字符串和一个整数参数。integer版本返回第i个元素,字符串版本在列表中查找具有相同名称的匹配项。
这就是错误的原因:"i"是一个double。与整数一起使用,一切都很好。。。
PS:将double解析为字符串可能会导致完全不同的功能。。。