最初的界面图如图1-1(全选框ID: cb_checkall  DEV控件名称:gcCon ):

要实现的功能如下图(1-2  1-3  1-4)及代码所示:

图1-2

图1-3

图1-4

O(∩_∩)O哈哈~

不要着急哦,看清要实现的功能后我们来上代码啦!!

 1     //全局变量 0:表格中的数据没有全部选中 1:表格中的数据全部选中
 2     public int iCheckAll=0;
 3     private void repositoryItemCheckEdit1_CheckedChanged(object sender, EventArgs e)
 4         {
 5             CheckEdit chkCheck = (sender as CheckEdit);
 6             DataRow dr = gridView1.GetFocusedDataRow();
 7             if (chkCheck.CheckState == CheckState.Checked)
 8             {
 9                 dr["IS_CHECK"] = "1";
10             }
11             else
12             {
13                 dr["IS_CHECK"] = "0";
14
15             }
16
17             //增加全部选择时,全选按钮应该勾选上
18             DataTable dt = gcCon.DataSource as DataTable;
19
20             //判断如果GridView中按钮都全选了,把全选按钮也设置为选中状态
21             DataRow[] drTemp = dt.Select("IS_CHECK=0 OR IS_CHECK IS NULL");
22             if (drTemp.Length > 0)
23             {
24                 //没有全部选中
25                 iCheckAll = 0;
26                 cb_checkall.CheckState = CheckState.Unchecked;
27             }
28             else
29             {
30                 iCheckAll = 1;
31                 cb_checkall.CheckState = CheckState.Checked;
32             }
33
34
35
36         }

表格中复选框的CheckedChanged事件

 1   private void cb_checkall_CheckedChanged(object sender, EventArgs e)
 2         {
 3
 4             DataTable dt = gcCon.DataSource as DataTable;
 5
 6             //优化 增加判断dt为null的条件
 7             if (dt != null)
 8             {
 9                 if (cb_checkall.Checked == true)
10                 {
11                     foreach (DataRow item in dt.Rows)
12                     {
13                         item["IS_CHECK"] = "1";
14                     }
15                     iCheckAll = 1;
16                 }
17                 else
18                 {
19                     if (iCheckAll == 0)
20                     {
21                        //表格中的数据没有全部选中时  设置全选框的的状态为FALSE  (觉得这个条件可以不要,可以试下哦O(∩_∩)O哈哈~)
22                         DataRow[] drMM = dt.Select("IS_CHECK=0 OR IS_CHECK IS NULL");
23                         if (drMM.Length > 0)
24                         {
25                             cb_checkall.Checked = false;
26                         }
27                     }
28                     else if (iCheckAll==1)
29                     {
30
31                          //表格中的数据是全选中状态时,取消全选时,设置表格中的标识为不选中的状态
32                         foreach (DataRow item in dt.Rows)
33                         {
34                             item["IS_CHECK"] = "0";
35                         }
36                     }
37
38
39                 }
40
41             }
42             else
43             {
44                 //判断条件
45                 MessageBox.Show("没有可供选择的数据", "提示!");
46                 cb_checkall.Checked = false;
47             }
48
49         }

全选框的CheckedChanged事件

转载于:https://www.cnblogs.com/mengzhixingping/p/4463109.html

DEV控件中GridView中的复选框与CheckBox实现联动的全选功能相关推荐

  1. vant weapp 多选上传图片_小程序结合vant weapp的复选框(checkbox)组件实现全选、反选、多选...

    我是结合的vant weapp的checkbox实现的,less代码我就不给了 index.wpy {{list.materail_name}} {{list.materail_brand}} {{l ...

  2. 小程序结合vant weapp的复选框(checkbox)组件实现全选、反选、多选

    我是结合的vant weapp的checkbox实现的,less代码我就不给了 index.wpy <view class="item"><van-checkbo ...

  3. ElementUI tree控件如何取得被选中的节点,以及父节点(即使没被全选)

    ElementUI tree控件如何取得被选中的节点,以及父节点(即使没被全选) <el-tree:data="roleMenuData"node-key="id& ...

  4. GridView控件RowDataBound事件中获取列字段值的几种途径

    前台: <asp:TemplateField HeaderText="充值总额|账号余额"><ItemTemplate><asp:Label ID=& ...

  5. 扩展GridView控件(7) - 行的指定复选框选中时改变行的样式

    GridView既强大又好用.为了让它更强大.更好用,我们来写一个继承自GridView的控件. [索引页] [×××] 扩展GridView控件(7) - 行的指定复选框选中时改变行的样式 作者:w ...

  6. 确定多重选择列表控件 (List Control) 中的选定内容

    确定多重选择列表控件 (List Control) 中的选定内容 依次通过控件的 Items 集合,分别测试每一项的 Selected 属性. 下面的示例显示如何测试多重选择 ListBox 控件(名 ...

  7. android 获取控件在屏幕中的坐标

    今天,简单讲讲android如何获取控件在屏幕中的坐标. 这个其实也很简单,但是昨天做一个功能时,需要功能控件的坐标做一些逻辑操作时,居然不知道怎么做.所以在网上查找了资料后,解决了这个问题.这里记录 ...

  8. MapX 控件在C# 中的应用 (一)

    MapX 控件在C# 中的应用 (一) 关键字:MapX,C#,Net,ActiveX控件   /* * 在这段代码中,我们应用MapX控件结合老美地图做了最基本的 * 地图浏览功能:放大.缩小.拖动 ...

  9. vue element 控件之 el-container中的el-side 与 el-main 的间距怎么设置

    vue element 控件之 el-container中的el-side 与 el-main 的间距怎么设置 效果: 如图所示,当我们在页面中同时使用el-container中的el-side 与 ...

最新文章

  1. Python:Scrapy的settings
  2. 各个数据库取前10行记录
  3. robotframework使用RequestsLibrary进行http接口测试
  4. VF01 BAPI :BAPI_BILLINGDOC_CREATEMULTIPLE
  5. python中的单引号双引号和三引号
  6. C++new和delete运算符
  7. android 电话 快捷键,Android studio开发常用快捷键详解
  8. 【接口技术】8086的IN和OUT指令
  9. python与linux关系_如何处理Linux / Python依赖关系?
  10. 项目所需的应用程序未安装,确保已安装项目类型(.csproj)的应用程序的解决办法...
  11. Objective-C 2.0 with Cocoa Foundation 1 前言
  12. CSRF 攻击的应对之道
  13. 微软SQLHelper.cs类 中文版
  14. 【GNN】图表示学习Graph Embedding综述
  15. mysql语句中出现中文的情况下,在java程序中不会有结果,也不会报错.
  16. git 拉取某个分支到本地
  17. 计算机国际期刊等级,计算机期刊等级(全)
  18. magicbook java开发,作为一名IT编辑 荣耀MagicBook这三点打动了我
  19. [转载]三、二、一 …… Geronimo!,第 2 部分: 构建 Geronimo
  20. spinner requestlayout() improperly called by during layout running second layout pass

热门文章

  1. c语言线程传int值,如何用C语言实现多线程
  2. 【安卓开发 】Android初级开发(九)Android中封装View提供接口供点击事件回调的方法及使用
  3. 【开源项目】基于C++使用ffmpeg和QT开发播放器
  4. 「C语言」指针数组 数组指针 指针函数 函数指针
  5. python病毒usb文件自动安装_win7禁USB自动安装驱动功能避免木马病毒入侵
  6. wallpaper怎么设置锁屏_Apple ID密码忘了怎么找回?丨如何让面容和指纹解锁立马失效?...
  7. 家用计算机注意哪些参数,电脑小白买内存条要注意哪些?主要看哪些参数?这些知识要掌握...
  8. idle不是python自带的开发工具_Python的开发工具
  9. sudo spctl --master-disable_量大从优批发--阳离子聚丙烯酰胺--用于生活污水、
  10. 光纤收发器有什么用?光纤收发器的作用是什么?