2017-12-08 8 views
-2

DataGridviewには2つの列があります。 「メール」と「金額」。 私はちょうどこれらの2つの列からデータを取得し、キーとしてEMAILを、値としてAMOUNTを入れたいとします。 どうすればいいですか? 0があなたのMail列と1のインデックスであります。また、インデックス付きのアプローチを使用することができますDatagridviewからデータを取得して辞書に入れる#

答えて

0
Dictionary<String, Int32> myDic = new Dictionary<String, Int32>(); 

foreach (DataGridViewRow row in myDGV.Rows) 
{ 
    String mail = row.Cells["Mail"].Value; 
    Int32 amount = row.Cells["Amount"].Value; 

    if (myDict.ContainsKey(mail)) 
     myDic[mail] += amount; 
    else 
     myDic.Add(mail, amount); 
} 

あなたAmountの列のインデックスです:

foreach (DataGridViewRow row in myDGV.Rows) 
{ 
    String mail = row.Cells[0].Value; 
    Int32 amount = row.Cells[1].Value; 

    if (myDict.ContainsKey(mail)) 
     myDic[mail] += amount; 
    else 
     myDic.Add(mail, amount); 
} 

あなたDataGridViewは、同じメールで行が含まれている場合は、私のコードはそれぞれのDictionaryの値をインクリメントしてこのケースを処理します。

+0

ソリューションTommaso Belluzzoに感謝します。 –

関連する問題