2016-12-29 2 views
1

数字と文字列を値とする4つの列を持つdatagridviewがあります。すべてのデータを1行にまとめて、1つのIListに配置するにはどうすればよいですか。それはDataGridViewのではない場合、これは私がそれを行うだろうかある -DatagridviewからIListへのすべての行<Object>

var formula1 = "=SUM(B3:B5)"; 
var formula2 = "=SUM(C3:C5)"; 
var formula3 = "=MAX(D3:D5)"; 

List<object> list1 = new List<object>() { "Item", "Cost", "Stocked", "Ship Date" }; 
List<object> list2 = new List<object>() { "Wheel", "20.50", "4", "3/1/2016" }; 
List<object> list3 = new List<object>() { "Door", "15", "2", "3/15/2016" }; 
List<object> list4 = new List<object>() { "Engine", "100", "1", "3/20/2016" }; 
List<object> list5 = new List<object>() { "Totals", formula1, formula2, formula3 }; 
IList<IList<Object>> list = new List<IList<Object>>() { list1, list2, list3, list4, list5 }; 

ValueRange VRange = new ValueRange(); 
VRange.Range = range; 
VRange.Values = list; 

しかし、それは価値がDataGridViewのであるならば、私はもうそれを行う方法がわかりません。あなたはnoobを教えてくださいできますか?ありがとうございました。

+0

今私が行う場合は、 'datagridview' –

+0

を移入する方法の通りそれは私が上記のやり方で、私は "リスト"を設定することができますが、値がdatagridviewにある場合、私はすでにそれを行う方法を知らない。 – Ibanez1408

+0

それはあなたのリストで何をしたいかによって異なります。 DataGridViewRowsのリストを作成することも、オブジェクトに専用のクラスを作成してリストに格納することも、動的なExpandoObjectsを作成することもできます。詳細については、より多くの回答を得ることができます。 – Antoine

答えて

0

ありがとうございました。私はあなたがあなたのDataGridViewからこの方法をList<List<object>>を作成するためにLINQを使用することができます...このよう

 IList<IList<Object>> list = new List<IList<Object>>() { }; 
     for (var i = 0; i < dgvAttendance.Rows.Count - 1; i++) 
     { 
      List<object> lists = new List<object>() { dgvAttendance.Rows[i].Cells[0].Value.ToString(), 
       dgvAttendance.Rows[i].Cells[1].Value.ToString(), dgvAttendance.Rows[i].Cells[2].Value.ToString(), 
       dgvAttendance.Rows[i].Cells[3].Value.ToString() }; 
      list.Add(lists); 
     } 

     ValueRange VRange = new ValueRange(); 
     VRange.Range = range; 
     VRange.Values = list; 
1

をそれを得た:

var list = dgv.Rows.Cast<DataGridViewRow>().Where(r => !r.IsNewRow) 
       .Select(r => r.Cells.Cast<DataGridViewCell>().Select(c => c.Value).ToList()) 
       .ToList(); 
関連する問題