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

ASP.NET
.NET框架类库中的定时器类的使用
net得到本地电脑基本信息的简单方法
如何通过ASP.NET页面重启服务器
.net开发工具LINQ框架设计指南
.net ajax 与Ext2框架在.net程序中的应用
.Net上传图片按比例自动缩小或放大
.NET的死锁调试工具:ACorns.Debugging
ADO在vb.net中的使用(与datagrid结合)
Visual C++中实现双缓冲的基本原理
.net App中集成COM组件的一些简单技巧
vb.net通过app.config来改变编译路径
实例了解Asp.Net的继承和多态性
asp.net里导出excel表方法汇总
ASP.NET上传大于4M的文件的相关设置
.Net开发漫谈:关于命名空间和目录划分
.Net(C#)开发漫谈:关于变量的命名和属性
.Net新手学堂:Lambda表达式的一般应用
故障解析:.NET开发正则表达式中BUG一例
一步一步安装VB.Net(图片较多,请稍等)
关于用VB做更漂亮的窗体的思考

ASP.NET 中的 获得DataGridViewCheckBoxColumn的状态


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