注意:在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. Ubuntu安装node

    #!/bin/bash echo "添加环境变量需要root权限,如无root权限,则不添加环境变量" echo "输入Node下载地址(目前仅支持Node官方网站上Li ...

  2. Bootstrap<基础十一>字体图标(Glyphicons)

    字体图标(Glyphicons),并通过一些实例了解它的使用.Bootstrap 捆绑了 200 多种字体格式的字形. 获取字体图标 我们已经在 环境安装 章节下载了 Bootstrap 3.x 版本 ...

  3. bzoj2141 树状数组套Treap树

    题目大意是在能够改变两个数的位置的情况下计算逆序对数 这因为是动态记录逆序对 本来单纯逆序对只要用树状数组计算即可,但这里因为更新,所以利用TReap树的删点和增加点来进行更新 大致是把每个树状数组所 ...

  4. 两台装有Ubuntu系统的服务器搭建VPN(一台为本地服务器,另一台为云服务器)

    我们搭建VPN采用的是openvpn,搭建过程总体需要经过三大步骤:   1.openvpn的安装与配置    2.端口转发    3.系统重启iptables规则自动生效  注意:以下所有名令在ro ...

  5. eclipse 导入工程报错Unable to execute dex: Multiple dex files define Landroid/annotation/SuppressLint

    对策: 检查libs 是否有重复加载的.

  6. DataList无数据如何显示

    <FooterTemplate> <asp:Label runat="server" ID="emptyLb" Text="No D ...

  7. android:installLocation 解析

    决定了apk安装位置 有三个选项:1.auto 2.internalOnly 3.preferExternal http://www.cnblogs.com/Lefter/archive/2012/0 ...

  8. iOS学习之判断是否有网络的方法

    在实际开发中, 会有这样一个需求: 用户在有网的状态下会直接从网络请求数据, 在没网的情况下直接从本地读取数据. 下边的方法可以判断是否有网络. - (BOOL)connectedToNetwork ...

  9. 探索javascript----拖拽

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. hdu 2066

    ps:我天...之前看了迪杰斯特拉..现在这题要用到floyd..就是先建一个图,然后从列开始遍历,每列里遍历行,行又对应每列... 从A列开始遍历每行,比如遍历到B,这时候B->A知道是2,接 ...