我现在正在解决这个问题大约2天,并在许多主板上搜索解决问题的解决方案:(
我在我的DataGrids列中通过linq XML Attributes编写了名为“Betrag”的。
现在我想获得所有这些条目,然后将它们总计为一个数字(该列的所有条目都是数字!)。
我希望有人可以帮我解决这个问题。
最诚挚的问候, 费边
现在有些代码:
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());
答案 0 :(得分:1)
为什么不做这样的事情......
var sum = data.Sum(item=>item.betrag);//you might have to parse as number.
您可以将该值放在页面上的属性中,然后将数据绑定表达式放在您想要显示值的任何位置。
我认为你应该避免尝试对单元格中的值求和。
另外,我认为如果可能的话,你应该将betrag属性设为整数。您始终可以通过在前面的代码上使用String.Format来添加符号。
答案 1 :(得分:0)
这:
kontostand += Convert.ToInt32(Daten.Columns[3].GetCellContent(1).ToString());
如果它是一个asp网格应该是这样的:
kontostand += Convert.ToInt32(Daten.Rows.Cells[3].innerText);
如果没有,则需要循环行。