2012-04-04 2 views
-1

aber kann keine Informationen finden. Eingeschränkt pünktlich.C# Tabelle aus Datagrid erstellen (nur 2 Felder)

Ich habe eine Datagridview, 6 Felder.

Ich muss eine Datentabelle machen, die nur 2 dieser Felder enthält.

Felder sind Teil und Pareto.

so brauche ich alle Datensätze, sondern nur 2 der Felder in meiner Datentabelle.

Mit Cis .net 4.0 und Microsoft Visual Studio 2010

Antwort

2
foreach(DataGridViewRow row in myDataGridView.Rows) 
{ 
     DataRow tableRow = myDataTable.NewRow(); 
     tableRow.Cells["part"].value = row["part"].value; 
     tableRow.Cells["pareto"].value = row["pareto"].value; 
     myDataTable.Rows.Add(tableRow); 
} 

So etwas sollte es tun. Stellen Sie nur sicher, dass Ihre DataTable über die entsprechenden Zeilen verfügt.

+0

jetzt habe ich diese Version schon einmal ausprobiert, aber es ist fehlerhaft bei der foreach. Foreach kann nicht arbeiten, da Datagridview keine öffentliche Definition für GetEnumerator enthält " – lemunk

+0

DataGridview.Rows tut jedoch, sind Sie sicher, dass Sie die .Rows am Ende hinzugefügt? – Dan

+0

ah mein Fehler Ich verpasste das verdammte Ding aus Versehen, das ist nicht Das ursprüngliche Problem, das Problem, das ich habe, ist die, die ich noch einmal bekomme: Fehler 'Objekt' enthält keine Definition für 'Wert' und keine Erweiterungsmethode 'Wert' ein erstes Argument des Typs 'Objekt zu akzeptieren 'könnte gefunden werden (fehlt Ihnen eine using-Direktive oder eine Assembly-Referenz? – lemunk

2
DataGridViewRowCollection coll = dataGridView1.Rows; 

DataTable t = new DataTable(); 

t.Columns.Add(); 

foreach (DataGridViewRow item in coll) 

{ 
    t.Rows.Add(item.Cells[0].Value); 
} 

einfach die Zellen fügen Sie aus jeder Zeile wollen. Alles, was Sie tun müssen, ist die Spalten zu filtern.

+0

etwas neugierig mit diesem, wenn Sie 2 Felder hätten, wie würde das funktionieren? seit Ihrer Schleife für eine einzelne Zelle ohne Zuordnung? – lemunk

+0

Dieser Looping läuft auch durch datagrdiview.rows, also läuft er durch die Zeilen, nicht durch die Zellen. item.Cells [0] bekommt die erste Zelle, item.Cells [1] bekommt die zweite usw. – Dan

+0

yeh hatte einen blonden Moment. – lemunk

Verwandte Themen