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

ASP.NET
探讨:ASP.NET技术的学习顺序问题
关于ASP.NET在IIS一些问题的经验总结
ASP.NET中通过对话框方式下载文件
ASP.NET网络编程中常用到的27个函数集
ASP.NET生成静态网页的方法
ASP.NET 2.0中实现弹窗报警提示
复杂ASP.NET服务器控件调整小技巧
ASP.NET调用oracle存储过程实现快速分页
VB.NET实现窗体图标最小化到状态栏
ASP.NET技巧:DataGrid传统分页方式
ASP.NET里的事务处理
ASP.NET 2.0高级数据处理之数据绑定
ASP.NET多频道网站架构实现方法
.NET vs J2EE——面对SOA的荒谬与误解
ASP.NET 2.0中执行数据库操作命令之一
ASP.NET应用程序资源访问安全模型
ASP.NET 2.0中的Web和HTML服务器控件
对.NET Framework 反射的反思
带你走进ASP.NET(1)
带你走进ASP.NET(2)

ASP.NET 中的 获得DataGridViewCheckBoxColumn的状态


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