0

我现在把这个问题弄乱了大约 2 天,并在许多板上搜索了解决问题的解决方案:(

我在名为"Betrag"的 DataGrids 列中通过 linq XML Attributes 编写。

现在我想获取所有这些条目,然后将它们加起来为一个数字(该列的所有条目都是数字!)。

我希望有人可以帮助我解决这个问题。

最好的问候, 法比安

现在一些代码:

        data = new List<Daten>();
        data = (from datensatz in doc1.Descendants("datensatz")

                            select new Daten

                            {
                                //datum = "27.6.2012",
                                datum =datensatz.Attribute("datum").Value,
                                //zweck = "Eröffnung",
                                zweck =datensatz.Attribute("zweck").Value,
                                //empfang = benutzer,
                                empfang =datensatz.Attribute("empfang").Value,
                                //betrag = "0€"
                                betrag =datensatz.Attribute("betrag").Value + "€"

                            }).ToList();


                this.Daten.ItemsSource = data;
                //THIS CODE ADDS THE ATTRIBUTES TO MY GRID

然后我尝试了这个:

kontostand += Convert.ToInt32(Daten.Columns[3].GetCellContent(1).ToString());
4

2 回答 2

1

为什么不只是做这样的事情......

var sum = data.Sum(item=>item.betrag);//you might have to parse as number.

您可以将该值放在页面上的属性中,然后将数据绑定表达式放在要显示该值的任何位置。

我认为您应该避免尝试对单元格中的值求和。

另外,如果可能的话,我认为您应该将 betrag 属性设为整数。您始终可以通过在前面的代码中使用 String.Format 来添加符号。

于 2012-06-28T13:26:35.027 回答
0

这个 :

kontostand += Convert.ToInt32(Daten.Columns[3].GetCellContent(1).ToString());

如果它是一个 asp 网格,应该是这样的:

kontostand += Convert.ToInt32(Daten.Rows.Cells[3].innerText);

如果没有,那么您需要循环行。

于 2012-06-28T10:59:08.630 回答