c# - Sum ListView 特定列

标签 c# listview

我正在寻找这个案例的解决方案,我有一个 ListView ,我必须显示一个简单的收银员。

Appearence

我的疑问是为什么我可以在底部 textBoxTotal

中显示 ListView 中所有项目的总和
codProduto = int.Parse(txtCodProd.Text);
nomePRod = txtNomeProd.Text;
quantidade = int.Parse(txtQuantidade.Text);
valorUnitario = nvo.procurarPreco(int.Parse(txtCodProd.Text));
valorTotal = quantidade * valorUnitario;

valorAcumulado += valorTotal;

  0   1      2             3             4      <<number columns
//ID NOME QUANTIDADE VALOR_UNITARIO VALOR_TOTAL

ListViewItem itens = new ListViewItem(codProduto.ToString());
itens.SubItems.Add(nomePRod.ToString());
itens.SubItems.Add(quantidade.ToString());
itens.SubItems.Add(valorUnitario.ToString());
itens.SubItems.Add(valorTotal.ToString());

listView.Items.Add(itens);

当我试图创建一个循环来捕获具有我需要的值的列时,我失败了。

类似的东西:

for (int i = 0; i < listView.Items.Count; i++)
//{
//    valorAcumulado += decimal.Parse(listView.items[i].SubItems[4].Text);
//}

我只需要 4 列总和并显示它...即使添加了新项目也是如此。

最佳答案

我认为使用 GridViewListView 更适合您的情况。

您编写的循环只是有一个拼写错误,它是 Items 而不是 ListViewitems :

decimal valorAcumulado = 0;
for (int i = 0; i < listView.Items.Count; i++)
{
    valorAcumulado += decimal.Parse(listView.Items[i].SubItems[4].Text);
}
Console.WriteLine(valorAcumulado); // 83

关于c# - Sum ListView 特定列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37559626/

相关文章:

c# - 将项目添加到 WPF ListView 中的列

c# - 区分属性 protected 和 setter protected

c# - MVVM 最佳实践 : communication between view models

android - 如何重用 ListView 的方法?

具有可绘制 int 数组的 Android ListView 可提高性能

android - 如何通过单击列表项转到特定 Activity ?

C# Swagger 生成的客户端如何验证和使用自动生成的代码

c# - 如何对xml文件进行单元测试?

c# - 颠覆协议(protocol)

android的ListView不监听单击