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

ASP.NET
Script:WINDOWS Script 枚举运行中进程
使用Flex结合Webservice完成域名查询
VSTS Team System 总算装好了。
用于部署数据库的 数据库初始化工具 xzSQLDeploy Tools V1.0 (for SQLServer) f...
一个将阿拉伯数字转换成中文大写的最简单算法
SCRIPT:使用Windows Script 关闭和打开指定程序
Script:使用WINDOWS脚本访问WEB SERVICES
asp.net连接Access数据库
VB中IIS Application发布可能出现的问题
VB打包后的安装问题
Nhibernate的数据分页技术(续)
使用API函数复制文件,可显示进度。
VB打包技巧
VB.NET实现DirectSound9 (9) 实现示波器
VB.NET 实现DirectSound9 (10) 均衡器
[水晶报表部署系列之一]轻松搞定水晶报表9.2打包
DataGrid 中双向排序的一种办法
利用System.EventHandler来实现两个窗体间的事件调用
多线程应用程序中调用窗体的一点心得
Smart Client之旅一:用B/S方式运行Exe应用程序

ASP.NET 中的 获得DataGridViewCheckBoxColumn的状态


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 61 ::
收藏到网摘: 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;
                    }
                }