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

ASP.NET
不同映射模式下的直线输出的效果问题
ASP.NET开发下的MVC设计模式的实现
ASP.NET编写应用程序的十大技巧
ASP.NET中使用AJAX的简单方法
ASP.NET MVC实现自己的视图引擎
认识asp.net会话状态
ASP.NET实现页面传值的几种方法
.NET中容易混淆的几组重要概念
详解.NET中的动态编译技术
如何使用ASP.Net加密Cookie
ASP.NET 2.0跨网页提交的三种方法
ASP.NET 2.0创建母版页引来的麻烦
.Net整合其他平台的一些探讨
ASP.NET编程经验技巧10则
最佳实践 ADO.NET实用经验无保留曝光
在.NET上执行多线程操作要考虑的两大因素
.Net开发 细说Visual Basic.Net
ASP.NET网络编程中经常用到的27个函数集
ASP.NET防止用户多次登录的方法
对ASP.NET MVC项目中的视图做单元测试

ASP.NET 中的 获得DataGridViewCheckBoxColumn的状态


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