0

コードビハインド ページにチェックボックス付きのグリッドビューがあります。機能は、チェックボックスを使用して削除するレコードを選択し、削除ボタンをクリックする必要があることです。私はそれを行うために以下のコードを使用します..しかし、最後の行を選択しても削除されません。代わりに、IndexOutOfRange/ System.FormatException .. をスローします。

エラーはこの行でスローされます

  CheckBox chkb = (CheckBox)gvAll.Rows[i].Cells[0].FindControl("chk");


       for (int i = 0; i < count; i++)
         {
             CheckBox chkb = (CheckBox)gvAll.Rows[i].Cells[0].FindControl("chk");
             if (chkb.Checked == true)
             {
                 string name = gvAll.Rows[i].Cells[3].Text;
                 if (!(name.Equals(System.DBNull.Value)))
                 {
                     a.delete(name);
                 }
             }
         }

緊急の課題です。助けてください..

4

1 に答える 1

1

foreachはどうですか?

     foreach(GridViewRow row in gvAll.Rows)
     { 
         CheckBox chkb = (CheckBox)row.Cells[0].FindControl("chk"); 
         if (chkb.Checked == true) 
         { 
             string name = row.Cells[3].Text; 
             if (!(name.Equals(System.DBNull.Value))) 
             { 
                 a.delete(name); 
             } 
         } 
     } 
于 2012-06-01T11:01:49.670 に答える