2016-05-15 7 views
-2
private void btnpass_Click(object sender, EventArgs e) 
{ 
    Inventory coo = new Inventory(
     dataGridView1.SelectedRows[0].Cells[0].Value.ToString(), 
     dataGridView1.SelectedRows[0].Cells[1].Value.ToString(), 
     dataGridView1.SelectedRows[0].Cells[2].Value.ToString(), 
     dataGridView1.SelectedRows[0].Cells[3].Value.ToString(), 
     dataGridView1.SelectedRows[0].Cells[4].Value.ToString(), 
     dataGridView1.SelectedRows[0].Cells[5].Value.ToString(), 
     dataGridView1.SelectedRows[0].Cells[6].Value.ToString()); 
    coo.Show(); 
} 

ich versuchte, die ausgewählte Zeile GridView an einem anderen GridView auf einer anderen Form zu passieren, aber ich eine Fehlermeldung:Pass ausgewählte Zeile eines gridview an einem anderen Grid auf einem anderen Form

 
Index was out of range. Must be non-negative and less than the size of the collection. 
Parameter name: index 

I eine andere Methode verwendet, aber Es hat mein Problem nicht gelöst.

Antwort

0

Ihre Fehlermeldung zeigen, dass es keine Zeile in Gitter ist oder nicht von Zeilen

ausgewählt

zunächst einmal prüfen für ausgewählte Zeilen, wenn sie größer als Null war dann nicht Ihren Job wie folgt aus:

if(dataGridView1.SelectedRows.Count>0) 
{ 
Inventory coo = new Inventory(
dataGridView1.SelectedRows[0].Cells[0].Value.ToString(), 
dataGridView1.SelectedRows[0].Cells[1].Value.ToString(), 
dataGridView1.SelectedRows[0].Cells[2].Value.ToString(), 
dataGridView1.SelectedRows[0].Cells[3].Value.ToString(), 
dataGridView1.SelectedRows[0].Cells[4].Value.ToString(), 
dataGridView1.SelectedRows[0].Cells[5].Value.ToString(), 
dataGridView1.SelectedRows[0].Cells[6].Value.ToString() 
); 
coo.Show(); 
} 
Verwandte Themen