DataGridViewCheckBoxCell的使用说明

Datagridview是.net中最复杂的控件,由于人们对表格的格式要求多种多样,所以编写一个通用的Datagridview(类似JSF中的datatable)非常困难的。

Datagridview中,用户可以对行、列、单元格进行编程。如行中可以插入下拉列表、复选框、编辑框、单选框等多种控件。每种控件都以DataGridView开头。如:单选框类为DataGridViewCheckBoxCell。

DataGridViewCheckBoxCell有一些恶心的属性折磨了我很久,下加以详细说明。

FormattedValue属性:

可能大家已经习惯了用checked=true或者checked=false这样直观的语句来取得checkbox的值,但DataGridViewCheckBoxCell没有checked属性,而使用了更复杂的FormattedValue。

EditedFormattedValue属性:

当前checkbox的状态,不管它是不是已经是一个“确认值”。在我们在印象里,checkbox只有true或false。什么叫“确认值”呢?确认值是指:不管用户是不是已经离开该单元格(即确认该单元格最终的状态),都返回checkbox目前的值。乍一听,更糊涂了。举个例子加以解释:

(1) 初始时checkbox未选中,用户点了一下,于是checkbox会呈现勾选状态
这时,EditedFormattedValue=true,但FormattedValue=false,这是因为,用户没有“确认”这个值,这个checkbox仍然处于编辑状态;

(2) 初始时checkbox选中,用户点了一下,于是checkbox会呈现未勾选状态,然后用户点击其它单元格

这时,EditedFormattedValue=false,但FormattedValue=false,这是因为,用户离开这个单元格意味着用户已经“确认”这个值,这个checkbox不再处于编辑状态,它的EditedFormattedValue==FormattedValue

这时,EditedFormattedValue=false,但FormattedValue=false,这是因为,用户离开这个单元格意味着用户已经“确认”这个值,这个checkbox不再处于编辑状态,它的EditedFormattedValue==FormattedValue

for (int i = 0; i < dataGridView1.Rows.Count; i++)
            {
                DataGridViewCheckBoxCell chkBoxCell = (DataGridViewCheckBoxCell)dataGridView1.Rows[i].Cells[Column_Id.Index];  

                if (chkBoxCell != null && ((bool)chkBoxCell.EditingCellFormattedValue == true || (bool)chkBoxCell.FormattedValue == true))
                {  

                }
            }

查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Programming/net/

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索checkbox
, datagridview
, 状态
, 用户
, false
单元
,以便于您获取更多的相关知识。

时间: 2025-01-19 18:31:41

DataGridViewCheckBoxCell的使用说明的相关文章

TDDL动态数据源开源-示例使用说明

TDDL动态数据源使用示例说明 环境准备 因为tddl动态数据源强依赖diamond配置中心,该依赖项目已经开源.请到http://code.taobao.org/p/diamond/src/ checkout 代码,下载使用文档(http://code.taobao.org/p/diamond/wiki/index/)按步骤部署. Jdk 1.6 安装. Mysql 5.1.x或者5.5.x 安装 Maven2  settings.xml修改(见附录) 示例使用 Tddl 动态数据源的开源代码

W3 Jmail使用说明中文版

W3 Jmail使用说明中文版 jmail.smtpmail Body : String (v3.0) 信件体,正文,使用AppendText追加内容 如:JMail.Body = "Hello world" Charset : String (v3.0) 字符集,缺省为"US-ASCII" 如:JMail.Charset = "US-ASCII" ContentTransferEncoding : String (v3.0) 指定内容传送时的编

CSS3 HSLA colors使用说明

前面我们讲一了篇关于<CSS3 HSL colors 使用说明>的文章,这里我们再说说css中别一个颜色相关的属性:CSS3 HSLA colors 其语法为: <length> <percentage> <percentage> <opacity>各个属性跟我们前说的HSL相同,有别之处是加了一个:opacity,其意思为: alpha(透明度). 取值在0到1之间:HSLA是在HSL的基础上增加一个透明度(A)的设置. 当然,HSLA 就是H

PHP Form表单验证:PHP form validator使用说明

在PHP网站开发建设中,用户注册.留言是必不可少的功能,用户提交的信息数据都是通过Form表单提交,为了保证数据的完整性.安全性,PHP Form表单验证是过滤数据的首要环节,PHP对表单提交数据的验证方式多种多样,早期一般使用Javascript对PHP表单进行验证,随着WEB2.0时代的到来,考虑到用户体验,使用Jquery Form表单验证插件是常用手法,今天我要介绍的是一个PHP表单验证类PHP form validator,其可应用于一般的PHP表单验证,也可以和第三方程序或Javas

W3 Jmail中文使用说明

      W3 Jmail 使用说明   jmail.smtpmail     Body : String        (v3.0)        信件体,正文,使用AppendText追加内容        如:JMail.Body = "Hello world"    Charset : String        (v3.0)        字符集,缺省为"US-ASCII"        如:JMail.Charset = "US-ASCII&

Jmail邮件组件使用说明及示例代码

 W3 Jmail 使用说明 jmail.smtpmail Body : String(v3.0)信件体,正文,使用AppendText追加内容如:JMail.Body = "Hello world" Charset : String(v3.0)字符集,缺省为"US-ASCII"如:JMail.Charset = "US-ASCII" ContentTransferEncoding : String(v3.0)指定内容传送时的编码方式,缺省是&q

Websharp使用说明(1)

web Websharp使用说明 前言 N层的应用软件系统,由于其众多的优点,已经成为典型的软件系统架构,也已经为广大开发人员所熟知.在一个典型的三层应用软件系统中,应用系统通常被划分成以下三个层次:数据库层.应用服务层和用户界面层.如下图所示: 其中,应用服务层集中了系统的业务逻辑的处理,因此,可以说是应用软件系统中的核心部分.软件系统的健壮性.灵活性.可重用性.可升级性和可维护性,在很大程度上取决于应用服务层的设计.因此,如何构建一个良好架构的应用服务层,是应用软件开发者需要着重解决的问题.

Hadoop webHDFS设置和使用说明

1.配置 namenode的hdfs-site.xml是必须将dfs.webhdfs.enabled属性设置为true,否则就不能使用webhdfs的LISTSTATUS.LISTFILESTATUS等需要列出文件.文件夹状态的命令,因为这些信息都是由namenode来保存的. 在namenode和一台datanode中向/etc/hadoop/conf/hdfs-site.xml中添加属性: <property> <name>dfs.webhdfs.enabled</nam

关于《黑白棋》的开发文档和使用说明

本程序是在已有的<黑白棋>基础上实现的网络版,通过Winsocket实现了进程的同步.如图一: 开发文档和使用说明-">图一