DEV控件中GridView中的复选框与CheckBox实现联动的全选功能
最初的界面图如图1-1(全选框ID: cb_checkall DEV控件名称:gcCon ):
要实现的功能如下图(1-2 1-3 1-4)及代码所示:
图1-2
图1-3
图1-4
O(∩_∩)O哈哈~
不要着急哦,看清要实现的功能后我们来上代码啦!!
//全局变量 0:表格中的数据没有全部选中 1:表格中的数据全部选中
public int iCheckAll=;
private void repositoryItemCheckEdit1_CheckedChanged(object sender, EventArgs e)
{
CheckEdit chkCheck = (sender as CheckEdit);
DataRow dr = gridView1.GetFocusedDataRow();
if (chkCheck.CheckState == CheckState.Checked)
{
dr["IS_CHECK"] = "";
}
else
{
dr["IS_CHECK"] = ""; } //增加全部选择时,全选按钮应该勾选上
DataTable dt = gcCon.DataSource as DataTable; //判断如果GridView中按钮都全选了,把全选按钮也设置为选中状态
DataRow[] drTemp = dt.Select("IS_CHECK=0 OR IS_CHECK IS NULL");
if (drTemp.Length > )
{
//没有全部选中
iCheckAll = ;
cb_checkall.CheckState = CheckState.Unchecked;
}
else
{
iCheckAll = ;
cb_checkall.CheckState = CheckState.Checked;
} }
表格中复选框的CheckedChanged事件
private void cb_checkall_CheckedChanged(object sender, EventArgs e)
{ DataTable dt = gcCon.DataSource as DataTable; //优化 增加判断dt为null的条件
if (dt != null)
{
if (cb_checkall.Checked == true)
{
foreach (DataRow item in dt.Rows)
{
item["IS_CHECK"] = "";
}
iCheckAll = ;
}
else
{
if (iCheckAll == )
{
//表格中的数据没有全部选中时 设置全选框的的状态为FALSE (觉得这个条件可以不要,可以试下哦O(∩_∩)O哈哈~)
DataRow[] drMM = dt.Select("IS_CHECK=0 OR IS_CHECK IS NULL");
if (drMM.Length > )
{
cb_checkall.Checked = false;
}
}
else if (iCheckAll==)
{ //表格中的数据是全选中状态时,取消全选时,设置表格中的标识为不选中的状态
foreach (DataRow item in dt.Rows)
{
item["IS_CHECK"] = "";
}
} } }
else
{
//判断条件
MessageBox.Show("没有可供选择的数据", "提示!");
cb_checkall.Checked = false;
} }
全选框的CheckedChanged事件
DEV控件中GridView中的复选框与CheckBox实现联动的全选功能的更多相关文章
- js做全选,用一个checkbox复选框做多个checkbox复选框的全选按钮,有一个复选框未被选择时,全选按钮的checked就为false
用一个checkbox复选框做多个checkbox复选框的全选按钮,有一个复选框未被选择时,全选按钮的checked就为false,当所有checkbox都被选中时,全选按钮也被选中. 详解: 有两种 ...
- checkebox 全选 ,子复选框单个全部选择后,全选框也会被选择
<script> //点击全选,子复选框被选中 function demo(){ var allcheck=document.getElementById("allcheck&q ...
- 使用js获取checkbox控件在GridView中的第几行
这次的知识点是如何使用js获取checkbox控件所在的是第几行!!! 我们可以使用 JavaScript 中自带的 rowIndex 和 cellIndex 来获取行和列的键值 (从0开始) 这两个 ...
- DEV控件的Gridview小技巧总结
1.设置Gridview控件的某列不可编辑 this.gridData.gridView1.Columns["change_date"].OptionsColumn.AllowEd ...
- Dev控件学习-GridControl中的BandGridview导出多层行头操作
BandGridview默认导出的是Columns的列头信息,而不是Bands的列头信息,为了实现导出多层行头.代码如下 public static void ExportExcel2(DevExpr ...
- DEV控件的Gridview1
DEV控件的Gridview小技巧总结 1.设置Gridview控件的某列不可编辑 this.gridData.gridView1.Columns["change_date"].O ...
- GridView控件RowDataBound事件中获取列字段值的几种途径
前台: <asp:TemplateField HeaderText="充值总额|账号余额"> <ItemTemplate> <asp:Label ID ...
- C#中DEV控件,XtraTabPage得小方法
DEV控件设计窗体程序,XtraTabPage用到的小方法,欢迎大家评论,分享技术! //DEV中的选项卡 private bool TabCtlPageExist(string pageName) ...
- VS中Dev控件在工具箱里的不见的解决办法
出现问题:调整了VS中Dev控件后(以免生成程序每次都要在客户机上面注册dev),之前安装的DEV控件在vs工具箱中消失了,重装可以解决,但是太费时间了,检测dev自带的设置,找到了解决办法. 解决办 ...
随机推荐
- (IEEE-754) 字节数组与浮点数之间的互相转换(MODBUS float类型)
在做上位机开发过程中,经常会碰到字节数组与浮点数,整数等数据之间的转换,有时为了验证数据是否解析正确,得借助于IEEE浮点数工具,本文把基于c#实现的浮点数与字节数组(或16进制的字符串)转换的实现方 ...
- 关于IONIC 报错 XX is not a function
刚开始 做一个项目,总是报错"XX is not a function" 最后发现 原因 , 原来是 服务的 注入位置 有问题. angular.module(" ...
- 微信小程序-设备
网络状态: wx.getNetworkType(OBJECT) 获取网络类型. OBJECT参数说明: wx.getNetworkType({ success: function(res) { var ...
- [SAP ABAP开发技术总结]选择屏幕——各种屏幕元素演示
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- Query Designer:Exception,不同的值显示不同的颜色
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- Sprint第三阶段(第四天12.12)
- 使用airbnb的eslint
1. 全局安装eslint npm install -g eslint npm install -g eslint-config-airbnb eslint-plugin-import eslint- ...
- iOS10 拍照崩溃问题
根据相对应得功能添加相关权限即可,没必要全部添加,后面的描述可以官方点,因为会以弹出框的形式访问的,比如相机权限后面的描述可以为:这个应用需要访问相机:后续如果发现其他iOS10上面的问题会及时更新的
- java Collections.sort()实现List排序自定义方法
方法一: package testSimple; import java.util.ArrayList; import java.util.Collections; import java.util. ...
- fullpage 单屏高度超过屏幕高度,实现单屏内可以滚动并解决手机端单屏高度不正确的问题
最近接触了好几次jquery.fullpage.js这个插件,实现整屏的滑动,效果很炫,用fullpage来实现也很简单,但是也碰到了一些问题和大家分享一下 1.单屏高度超过屏幕高度,实现单屏的滑动 ...