winform datagridview在添加全选checkbox时提示:不能设置 selected 或 selected 既不是表 Table 的 DataColumn 也不是 DataRelation。
在项目中,需要多选功能,于是在datagridview添加了一列DataGridViewCheckBoxColumn

在给datagridview绑定完数据集之后,对全选进行操作的时候,发现总报错,报错内容如下:
不能设置 selected
selected 既不是表 Table 的 DataColumn 也不是 DataRelation。
在看到第一个错误信息的时候还有点懵,不知道是什么地方错了,导致不能设置,可是第二个错误一出来,马上就清楚明白了。原来是datagridview绑定的数据集没有selected这个字段。
知道原因,就好解决了,我们只需在绑定数据集之前,往里面添加selected即可。

加完之后就不报错啦。
附:加全选的代码:

#region CheckBox的添加
//在左上角做一个全选
ckBox = new CheckBox();
Rectangle rect = dgv_drug_dict.GetCellDisplayRectangle(CSelect.Index, -, false);
ckBox.Size = new Size(, dgv_drug_dict.ColumnHeadersHeight - );
ckBox.AutoSize = true;
rect.Y += ;
ckBox.Location = rect.Location;
ckBox.Text = this.CSelect.HeaderText;
CSelect.HeaderText = "";
this.dgv_drug_dict.Controls.Add(ckBox);
ckBox.Checked = false;
ckBox.CheckedChanged += new EventHandler(ckBox_CheckedChanged);
#endregion
/// <summary>
/// 多选框的选择
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void ckBox_CheckedChanged(object sender, EventArgs e)
{
DataView dv = (DataView)dgv_drug_dict.DataSource;
if (dv == null) return;
this.dgv_drug_dict.EndEdit();
for (int j = ; j < dv.Count; j++)
{
if (this.ckBox.Checked)
dv[j]["selected"] = "";
else
dv[j][CConst.DGV_SELECTD] = DBNull.Value;
}
this.dgv_drug_dict.EndEdit();
dgv_drug_dict.Invalidate();
}
winform datagridview在添加全选checkbox时提示:不能设置 selected 或 selected 既不是表 Table 的 DataColumn 也不是 DataRelation。的更多相关文章
- flexigrid扩展(添加全选,格式化表单)
1.关于flexigrid的属性这里不多说,百度一大把. 这里主要说一个参数process process参数:编写对某一列进行自定义处理的函数 function 方法名(tddiv,pid){}// ...
- ASP.NET给DataGrid,Repeater等添加全选批量删除等功能
很多情况下,在管理或者查看列表的时候我们需要很需要“全选”这个功能,这在ASP.NET中是非常容易实现的,下面我就将演示一点小代码实现这一功能. 实现全选的还是js的一个小函数: [code] ...
- asp:DataGrid之添加asp:CheckBox做全选功能时涉及到绑值问题解决
最大的意图是为asp:CheckBox的value绑定上自己需要的value值,而不是默认的字符串"on" 参考了这篇文章带Value属性的扩展CheckBox控件,意义不大,换了 ...
- 2016/3/30 租房子 ①建立租房子的增、删、改php页面 ②多条件查询 ③全选时 各部分全选中 任意checkbox不选中 全选checkbox不选中
字符串的另一种写法:<<<AAAA; 后两个AA回车要求顶格 不然报错 例子: <!DOCTYPE html> <html lang="en" ...
- GridControl 添加全选列
这里通过List对象绑定GridControl,且不用在GirdControl界面中添加任何列,实现CheckBox列的方法 1.列表中出现CheckBox列 非常简单,在绑定的List实体中,增加一 ...
- Android ListView(Selector 背景图片 全选 Checkbox等按钮)
list_item.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xm ...
- js全选checkbox框
html: <input type="checkbox" id="checkbox1" value="1" onclick=&quo ...
- Jquery 组 checkbox全选checkbox
<!DOCTYPE html><html lang="zh-cn"><head> <meta charset="utf-8&qu ...
- js实现全选checkbox
js代码 function selectAllCheckBox(parentid) { var PID = document.getElementById(parentid); var cb = PI ...
随机推荐
- 微信小程序版本自动更新弹窗提示
代码如下: onLaunch () { if (wx.canIUse('getUpdateManager')) { const updateManager = wx.getUpdateManager( ...
- DUMP 5 企业级电商项目
[订单模块] 创建订单 商品信息 订单列表 订单详情 取消订单 订单列表 订单搜素 订单详情 订单发货 [创建订单] 购物车勾选商品 涉及 Cart Product => 一个商品 ...
- CTR预估中GBDT与LR融合方案(转载)
1.背景 CTR预估,广告点击率(Click-Through Rate Prediction)是互联网计算广告中的关键环节,预估准确性直接影响公司广告收入.CTR预估中用的最多的模型是LR(Logis ...
- sorted
排序是编程中经常使用到的算法,无论哪种排序算法, 本质上都是比较两个元素的大小.如果是数字,可以直接比较,但是如果是字符串或者是dict呢?直接比较数学上的大小是没有意义的,因此,比较的过程必须通过函 ...
- mint-ui Picker设置指定初始值
最近做的项目公司需求是信息输入页设置地址跳转下一页后,再返回信息输入页查看信息时,地址要默认显示前面选择的地址,以此记录下,需要小伙伴可以看看 data{return{}}中设置 :slots 在 ...
- OSL
1,SimpleColorShader: shader gamma(color cin = color(,,),output color Cout=color(,,)) { Cout = cin; } ...
- 关于/tmp/ 目录自动清理文件
问题:今天开发人员给我说了一个错误:The temporary upload location [/tmp/tomcat.1337767218595042057.80/work/Tomcat/loca ...
- jieba中文分词.net版
先看效果: .Net 可以通过NuGet安装 PM> Install-Package jieba.NET 注意 安装之后把Resources文件夹复制到程序集所在目录即可(bun/Debug里面 ...
- python-基于tcp协议的套接字(加强版)及粘包问题
一.基于tcp协议的套接字(通信循环+链接循环) 服务端应该遵循: 1.绑定一个固定的ip和port 2.一直对外提供服务,稳定运行 3.能够支持并发 基础版套接字: from socket impo ...
- 二丶Django~1
一 什么是web框架? 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演. 对于 ...