当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 获得DataGridViewCheckBoxColumn的状态

ASP.NET
简单Web service 身份验证解决方案
asp.net SQL存储过程分页
asp.net 虚拟主机时常出现MAC验证失败错误之解决方法
ASP.net(c#) 生成html的几种解决方案[思路]
asp.net 生成静态页时的进度条显示
asp.net Coolite 学习交流
Coolite Cool Study 1 在Grid中用ComboBox 来编辑数据
Coolite Cool Study 2 同时更新多个Tab
Coolite Cool Study 3 MVC + Coolite 的实现代码
CommunityServer又称CS论坛的相关学习资料
C# 给站点指定位置的某种格式的图片添加水印
C# 添加文字水印类代码
asp.net 纯真ip库取得所在地实现代码
.NET 动态编译
C# 动态编译、动态执行、动态调试
asp.net 实现自定义Hashtable (.net)
asp.net 2.0的文件上传(突破上传限制4M)
C# OWC生成图表
asp.net javascript 文件无刷新上传实例代码
ASP.net 路径问题 详细说明

ASP.NET 中的 获得DataGridViewCheckBoxColumn的状态


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 144 ::
收藏到网摘: n/a

    当我们选中该Cell后,第1时间得到的该值为:
dgView1.Rows(i).Cells(1).Value = False


不过在DataGridView.CurrentCellDirtyStateChanged事件中增加以下语句:
DataGridView.CommitEdit 

该事件的意思是:单元格状态因其内容更改而更改是发生

CommitEdit :将当前单元格中的更改提交到数据缓存,但不结束编辑模式

引自msdn:

    通常,复选框单元格值专门用于存储(如同其他任何数据一样)或用于执行批量操作。如果您想在用户单击复选框单元格时立即作出响应,可以处理 DataGridView.CellClick 事件,但此事件发生在单元格值更新之前。如果在单击时需要新的值,则有一个选项可以计算基于当前值的预期值。另一种方法是立即提交更改,并处理 DataGridView.CellValueChanged 事件以对此作出响应。要在单击单元格时提交更改,必须处理 DataGridView.CurrentCellDirtyStateChanged 事件。在处理程序中,如果当前单元格是复选框单元格,将调用 DataGridView.CommitEdit 方法并传入 Commit 值。

for (int i = 0; i < dg_tixing.RowCount; i++)
                {
                    string re_value = dg_tixing.Rows[i].Cells[0].EditedFormattedValue.ToString();
                    if (re_value=="True")//判断勾选的
                    {

                        T_KeChengTiXing kc = new T_KeChengTiXing();
                        kc.course_id = PK_Course;
                        kc.tixing_id = Int32.Parse(dg_tixing.Rows[i].Cells[1].Value.ToString());
                        T_KeChengTiXingControl kcc = new T_KeChengTiXingControl();
                        kcc.Add(kc);
                        flag = true;

                    }
                    else
                    {
                        continue;
                    }
                }