如何实现批量删除
这是我代码,我这样做,还是只能删除一行,大家帮我看下哪里需要修改才能实现把选中的行都删除,实现批量删除
if(dgvsearch.SelectedRows.Count==0)
             {
                 MessageBox.Show("没有选中删除行!");
             }
             else
             {
                 DialogResult choice = MessageBox.Show("确认删除吗?", "确认信息", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                 for (int i = 0; i < dgvsearch.SelectedRows.Count; i++)
                 {                      
                     if (choice == DialogResult.Yes)
                     {                 
                         dbhelp.numid = Convert.ToInt32(dgvsearch.SelectedRows[0].Cells["id"].Value);//把序列号ID存入dbhelp的numid里              
                         string sql = string.Format("delete from govinformation where id='{0}'", dbhelp.numid);                 
                         try
                         {
                             dbhelp.conn.Open();
                             SqlCommand comm = new SqlCommand(sql, dbhelp.conn);
                             int result = comm.ExecuteNonQuery();
                         }
                         catch (Exception ex)
                         {
                             MessageBox.Show(ex.Message);
                         }
                         finally
                         {
                             dbhelp.conn.Close();
                         }
                     }
                 }
------解决方案--------------------你的dgvsearch.SelectedRows.Count是当前选中的行,肯定是1行,所以循环等于没起作用,只循环了一次。
你可以前面用checkbox,然后全选,删除,这样就行了。注意判断全删除之后,GridView绑定null不要出错。catch一下。
------解决方案--------------------