DataGridView加入CheckBox列 (VB)
项目中需要一个这样的DataGridView(字段不同):
1. DataSource绑定到一个DataTable上,这里假设DataTable有两个字段:ID, Name。
2. 第一列为CheckBox,让用户来选,提交的时候就提交CheckBox选中的。
我开始的时候是先在DataGridView初始化的时候就加入一列CheckBox,然后再把DataSource赋为那个DataTable,这样一来,显示是正常的,CheckBox也可以选,但是当我点击列头(是这样说的么)来排序的时候,原来选中的那些CheckBox又都恢复初始化值了,然后就开始了一个一个检查DataGridView, DataGridViewRow, DataGridViewCheckBoxCell....的无数属性,事件,方法看看有没有什么解决方法,郁闷的几个小时过去了。最后在MSDN中看到DataGridView不会维护未绑定的列的数据,也就是说排序的时候重新刷新了DataSource,而那些保存了哪些CheckBox的数据都丢掉了。
原因找到了,然后就好办了,加一列到那个DataTable中去然后再绑定到DataSource上,另外初始化的时候不要在加入那列CheckBox,绑定的时候会自动加入。贴一小段,大概就这个意思。
Dim dt As New DataTable
dt.Columns.Add("IsSelected", System.Type.GetType("System.Boolean"))
dt.Columns.Add("ID")
dt.Columns.Add("Name")
Dim dr As DataRow = dt.NewRow()
dr("IsSelected") = True
dr("ID") = "1"
dr("Name") = "Tracy"
dt.Rows.Add(dr)
dr = dt.NewRow()
dr("IsSelected") = True
dr("ID") = "11"
dr("Name") = "Yao"
dt.Rows.Add(dr)
DataGridView1.DataSource = dt
转载于:https://www.cnblogs.com/no7dw/archive/2009/07/28/1533350.html
DataGridView加入CheckBox列 (VB)相关推荐
- C# winform单元格的formatted值的类型错误 DataGridView中CheckBox列运行时候System.FormatException异常
C# winform单元格的formatted值的类型错误 DataGridView中CheckBox列运行时候System.FormatException异常 参考文章: (1)C# winform ...
- 【转】datagridview的checkbox列,当修改checkbox状态时实时获得其准确状态值
不知道大家有没有这样的经验,当点击或者取消datagridview的checkbox列时,比较难获得其状态是选中还是未选中,进而不好进行其它操作.网上方法有不少可是总是效果差强人意. 下面就列出它的个 ...
- C# 怎样判断 datagridview 中的checkbox列是否被选中
开发(winform)时碰到这个问题 C# 怎样判断 datagridview 中的checkbox列是否被选中,错误原因都C#对类型判断相当严格,为了避免大家以后多走弯路,把我的思路和大家说一下,希 ...
- C1DataGrid for Silverlight 修改 CheckBox 列外观
在C1DataGrid for Silverlight中,如果包含DataGridCheckBoxColumn类型的列,你会发现该列中单元格处于非编辑状态时,CheckBox都被显示成灰色. 本文也将 ...
- DataGridView的DataGridViewComboBoxColumn列点击一次
DataGridView的DataGridViewComboBoxColumn列点击一次 Winform中的DataGridView数据绑定控件有时会用到ComboBox列,想要显示ComboBox列 ...
- c#中datagridview里checkbox的使用方法[转]
c#中datagridview里checkbox的使用方法[转] view plaincopy to clipboardprint? 1.属性设置checkboxcolumn name:cb_ ...
- EditorGridPanel 中使用checkbox列,并包含afterEdit事件
在EditorGridPanel中无法使用默认的CheckBox控件,因此采用第三方扩展的控件实现, 以下是Ext.grid.CheckColu扩展类: Ext.grid.CheckColumn = ...
- C# WinForm DataGridView 给标题列增加序号及格式化某个字段
DataGridView 给标题列增加序号 private void dataGridView1_DataBindingComplete(object sender, DataGridViewBind ...
- datagridview删除第一列空白
datagridview删除第一列空白: dataGridView1.RowHeadersVisible = false; 删除最后一行空白: 1.dataGridView1.AllowUserToA ...
最新文章
- spark1.1.0学习路线
- System tuning中经常用到的一些Tcode
- php伪静态url运用,再谈 THINKPHP 伪静态url(URL访问模式)的设置
- C++:_ASSERTE(__acrt_first_block == header)
- 可以发外链的网站_可以发外链的地方有哪些?-top推
- The Economist经济学人是如何使用Go语言构建内容平台微服务架构的?
- 如何用阿里云服务器建立一个wordpress网站
- LINQ to XML:如何读写XCData
- Acer e5-571g 完美黑苹果10.13
- 谷歌浏览器如何设置internet选项
- html如何转换为母版页,如何在模板中指定/或取消母版页
- CSS盒子模型(内容区、边框、内外边距)
- 实验四+126+黄晟
- Python——超级鹰打码平台实现selenium对b站的自动化登陆
- 《农业机械学报》论文的格式要求
- c语言中用户验证程序,C语言用户登录系统账户密码比对
- 网络压线钳的实验报告_RJ45网线制作实验报告
- 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
- [数据分析] 决策树算法:决策树的概念
- m基于MATLAB的FM调制收音机仿真实现
热门文章
- oracle 无法弹出图形界面,Xshell 5 不能弹出GUI 图形界面问题
- 策略模式和工厂模式的区别_java设计模式之状态模式,策略模式孪生兄弟
- mysql datetime 转date_详解MySQL如何按表创建千万级的压测数据
- PyTorch教程(九):损失函数与Loss的梯度
- docker 安装mysql 5.7
- docker 安装openmaptiles
- 12 款 Linux 终端推荐
- FP、FN、TP、TN、精确率(Precision)、召回率(Recall)、准确率(Accuracy)评价指标详述
- redis java应用_Java+Redis应用(第一章)
- python启动mysql_Python操作MySQL