2010-11-25 9 views
0

Wenn ich versuche, die GridView-Zellenwerte an ein Array zu übergeben, ist alles perfekt, aber das Array ist leer, nachdem der Code ausgeführt wurde.Gridview-Zellenwert und Array-Liste

Wenn ich im Debug-Modus durchschaue, ist auch der Index der ausgewählten Zeile in Ordnung, d. H. Wenn ich zwei Zeilen unter Verwendung von Kontrollkästchen unter 1000 auswähle, zeigt die Zählung genau 2 im Array, aber die Daten sind leer.

Ich bin nicht in der Lage, den Zellwert aus der Gridview zu bekommen.

Jeder Rat würde sehr geschätzt werden.

protected void Button2008_Click(object sender, EventArgs e) 
{ 
    ArrayList checkedItems = new ArrayList(); 

    foreach (GridViewRow row in this.GridView1.Rows) 
    { 
     if (((CheckBox)row.FindControl("cbRows")).Checked == true) 
     { 
     checkedItems.Add(row.Cells[12].Text); 
     } 
    } 

    Session["CheckedItems"] = checkedItems; 

    Response.Redirect("About.aspx", true); 
} 

Antwort

0

Sie einen Haltepunkt verwenden können, und prüfen Sie, wo das Problem ist, auftreten, zum Beispiel, zeigen sich row.Cells[12].Text beliebigen Wert?

und Sie können überprüfen, wie Ihre ASPX-Seite nach dem Postback handelt.

+0

doppelt so. Wahrscheinlich ist der 12 Index falsch oder leer. Denken Sie daran, die Sammlung der Zellen ist NULL basiert. – jaderanderson