汇总列表框中的项目

时间:2015-06-11 16:12:02

标签: vb.net linq string.format

我遇到了这个数学问题:

lsamount.Items.Add(String.Format("{0:n}", Val(exp_amount.Text)))

在我的计时器代码中:

For i = 0 To lsamount.Items.Count - 1
   TOT = TOT + Val(lsamount.Items(i))
Next i
totalamount.Text = TOT.ToString

有没有最简单的方法来添加这个2?

3 个答案:

答案 0 :(得分:0)

试试这个:

totalamount.Text = string.Join("", lsamount.Items)

答案 1 :(得分:0)

我认为我钉了它 这是我的新计时器代码

        Dim TOT As Double
        Dim tmpstr As String
        For i = 0 To lsamount.Items.Count - 1
            tmpstr = lsamount.Items(i).ToString.Replace(",", "")

            TOT = TOT + Val(tmpstr)
        Next i
        totalamount.Text = (String.Format("{0:n}", Val(TOT)))

工作正常。

答案 2 :(得分:0)

这是另一个建议,只有一行代码而没有循环......这使用Linq来完成此任务。

 totalamount.Text = lsamount.Items.Cast(Of String)().Sum(Function(x) Convert.ToDouble(x.Replace(",", ""))).ToString