winform中dataGridView1中复选框类型的单元格的值是如何得到的?????

qingqingee 2008-11-13 11:16:54
问题主要是对数据库进行更新的操作,在dataGridView1中读取信息,更新数据库。
在dataGridView1设置单元格为dataGridViewCkeckBoxColumn 类型的,不知道如何获取这一列的值。
下面的两种方法我也是试过了还是出错!不知道大家有什么好的方法,帮忙看看了。

下面的i为循环变量
//参与服务费Cyfwf
if (dataGridView1.Rows[i].Cells[2].Value == true)
{
Cyfwf = 1;
}
else
{
Cyfwf = 0;
}
//参与排行调查 Cyphdc
if (dataGridView1.Rows[i].Cells[3].Value == CheckState.Checked)
{
Cyphdc = 1;
}
else
{
Cyphdc = 0;
}
...全文
185 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
tailor_ms 2008-11-13
  • 打赏
  • 举报
回复

if (Convert.ToBoolean(this.dgvResult.CurrentRow.Cells[5].Value) == true)
objDataRow["DutyCount"] = 0.5;
else
objDataRow["DutyCount"] = 1;

是不是这个意思.
dahai99007 2008-11-13
  • 打赏
  • 举报
回复
[Quote=引用楼主 qinqinyeye 的帖子:]
问题主要是对数据库进行更新的操作,在dataGridView1中读取信息,更新数据库。
在dataGridView1设置单元格为dataGridViewCkeckBoxColumn 类型的,不知道如何获取这一列的值。
下面的两种方法我也是试过了还是出错!不知道大家有什么好的方法,帮忙看看了。

下面的i为循环变量
//参与服务费Cyfwf
if (dataGridView1.Rows[i].Cells[2].Value ==…
[/Quote]
  if (dataGridView1.Rows[i].Cells[2].Value.ToString()  == "true") 
{
Cyfwf = 1;
}
else
{
Cyfwf = 0;
}

另外在复选框状态发生改变时要在CurrentCellDirtyStateChanged事件里边:
private void datagridview1_CurrentCellDirtyStateChanged(object sender, EventArgs e)
{
this.dgvDownRecord.CommitEdit(DataGridViewDataErrorContexts.Commit);
}
qingqingee 2008-11-13
  • 打赏
  • 举报
回复
新手上路,
多帮忙了!
wenyegood 2008-11-13
  • 打赏
  • 举报
回复
如下:
string re_value = datagridview.Rows[i].Cells[0].EditedFormattedValue.ToString();
if (re_value == "True")
{...}
记得给分哦嘿嘿

111,117

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧