0

私は今この問題を約2日間いじっていて、問題を解決するための解決策を多くのボードで検索しました:(

「Betrag」という名前のDataGrids列にlinqXML属性を介して記述しました。

次に、これらのエントリをすべて取得して、合計して1つの数値にします(列のすべてのエントリは数値です!)。

誰かがこの問題で私を助けてくれることを願っています。

よろしく、ファビアン

今いくつかのコード:

        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 に答える