注意:在DataGridView添加一列(name:delete),ColumnType属性为:DataGridViewCheckBoxColumn,FlaseValue属性为:Flase,TureValue属性为Ture,并设置DataGridView的ReadOnly属性为Flase。

  1. //删除
  2. private void del_button_Click(object sender, EventArgs e)
  3. {
  4. try
  5. {
  6. int count = 0;
  7. for (int i = 0; i < form_dataGridView.RowCount; i++)
  8. {
  9. if (form_dataGridView.Rows[i].Cells[8].EditedFormattedValue.ToString() == "True")
  10. {
  11. count++;
  12. }
  13. }
  14. if (count == 0)
  15. {
  16. MessageBox.Show("请至少选择一条数据!", "提示");
  17. return;
  18. }
  19. else
  20. {
  21. if (MessageBox.Show(this, "共选择" + count + "条,你要删除这些数据吗?", "提         示", MessageBoxButtons.YesNo, MessageBoxIcon.Information).ToString() == "Yes")
  22. {
  23. string connStr = ConfigurationManager.ConnectionStrings["connStr"].ToString();
  24. OleDbConnection conn = new OleDbConnection(connStr);
  25. conn.Open();
  26. string str = "(";
  27. for (int i = 0; i < form_dataGridView.RowCount; i++)
  28. {
  29. if (form_dataGridView.Rows[i].Cells[8].EditedFormattedValue.ToString() == "True")
  30. {
  31. str += form_dataGridView.Rows[i].Cells[0].Value.ToString() + ",";
  32. }
  33. }
  34. if (str.Length > 0)
  35. {
  36. str = str.Substring(0, str.Length - 1);
  37. str += ")";
  38. MessageBox.Show(str);
  39. }
  40. string sql = "delete from form where id in " + str;
  41. OleDbCommand cmd = new OleDbCommand(sql, conn);
  42. cmd.ExecuteNonQuery();
  43. conn.Close();
  44. MessageBox.Show("删除成功");
  45. GetData();//引用事件,刷新数据
  46. }
  47. else
  48. {
  49. return;
  50. }
  51. }
  52. }
  53. catch
  54. {
  55. }
  56. }

WinForm DataGridView根据选中的复选框删除的更多相关文章

  1. 选中没有选中的复选框,匹配含有某个字符串的正则,json取值的两种方法,把变量定义在外面跟里面的区别

    一.筛选没有选中的复选框:not("input:checked") 二.匹配有VARCHAR的字符串:".*VARCHAR.*?" 三.json取值的两种方法 ...

  2. js根据选中的复选框,隐藏那一行

    如图,选择复选框,点击“隐藏”按钮,隐藏选中行 1.JavaScript代码: function getCheckedIds() { var checkedSubject = $('#showSbgl ...

  3. bootstrap table 复选框选中后,翻页不影响已选中的复选框

    使用的 jquery版本为 2.1.1 在项目中发现bootstrap table的复选框选中后,翻页操作会导致上一页选中的丢失,api中的 bootstrapTable('getSelections ...

  4. easyui datagrid 通过复选框删除新追加的数据问题

    之前写好的功能在保存好数据后再通过复选框删除是没有问题的,可现在想多追加几行,然后选择删除新追加的某几行或一行,通过$('#dg').datagrid('getChecked')方法返回选中行,然而返 ...

  5. jQuery分别获取选中的复选框值

    function jqchk(){  //jquery获取复选框值   var s='';   $('input[name="aihao"]:checked').each(func ...

  6. element表格点击行即选中该行复选框

    关键代码如下 <el-table ref="multipleTable" :data="tableData" highlight-current-row ...

  7. 设置checkbox不能选中,复选框不能选中

    Web开发:设置复选框的只读效果 在Web开发中,有时候需要显示一些复选框(checkbox),表明这个地方是可以进行勾选操作的,但是有时候是只想告知用户"这个地方是可以进行勾选操作的&qu ...

  8. ztree点击节点实现选中/取消复选框

    效果 代码 在js中初始化tree时 设置复选框操作只影响子节点 复选框事件,想怎么处理就怎么处理

  9. DevExpress gridcontrol添加了复选框删除选中的多行/批量删除的方法

    思路:遍历gridView1的每一行,该行中checkbox列被勾选则设置该行为选中状态,执行gridView1提供的DeleteSelectedRows方法则可 public void DoDele ...

随机推荐

  1. SQL疑难问题

    最近,遇到并解决一个SQL上的疑难问题.考勤系统,记录着员工进出公司的刷卡记录.而员工刷卡并不规范,存在刷多次的情况.例如:出去时连续刷多次,进来时也连续刷多次.筛选有效刷卡记录数据的规则:对于出去时 ...

  2. 用PowerMock mock final类constructors

    也相对简单,直接贴代码 被测方法 public class EmployeeServiceWithParam { public void createEmployee(final Employee e ...

  3. SQL表旋转

    在制作报表的时候,有时候会碰到基础资料是依照时间区间去一笔一笔记录的资料,但是使用者在看报表的时候想要将时间区间以横向的方式呈现不是直向的情况出现,又或者基础资料的表数据结构是横向的而使用者在看报表的 ...

  4. 为dom添加点击事件,由此引发this指向的思考

    下午没有任务,闲来无事仿个小网页巩固下基础知识.由于公司安全规定,原网页截图不便上传(也没法上传),回家后做了个简单的菜单以图示: 目标:点击某选项时,该选项底边加粗 1.首先定义click方法,然后 ...

  5. 第二章 JavaScript语法·

    javascript代码放置位置: 1.将代码放置在文档<head>标签中的<script>标签之间: 2.将代码存为一个扩展名为.js的独立文件.典型做法是在文档的<h ...

  6. Isolation-based Anomaly Detection

    Anomalies are data points that are few and different. As a result of these properties, we show that, ...

  7. 这种代码怎么改写?以致于在下次增加CustomsType时,不需要再加 if 语句。

    最近看到项目里一段代码如下: excelObject excel = new excelObject(); if (loadbill.CustomsType == 1) excel.IDownload ...

  8. 部署Maven核心程序

    1.安装Maven核心程序 1.1 检查JAVA_HOME环境变量 2. 解压Maven核心程序压缩包,放在一个非中文无空格的路径下 3. 配置Maven相关的环境变量 3.1 MAVEN_HOME ...

  9. NOIP 考前 KMP练习

    BZOJ 1461 && BZOJ 1729 KMP+BIT 一看就是字符串匹配但是不同的是要按照每个字符的排名情况. 首先对于数字x的排名,那么要判断x前小于x的数的个数,和x前小于 ...

  10. 【RobotFramework自动化测试】数据库值验证

    ${sqlCount}    Row Count    ${sqlStr}    #注释:Row Count 将SQL查询结果的行数返回给前面的参数: @{rs}    query    ${sqlS ...