写了一段C#代码,总是出现问题,是不是dataGridView1.SelectedRows[i].Cells[1].Value.ToString() 有问题

for(inti=0;i<dataGridView1.Rows.Count;i++){if((bool)dataGridView1.Rows[i].Cells[0].Ed... for (int i = 0; i <dataGridView1.Rows.Count; i++) { if ((bool)dataGridView1.Rows[i].Cells[0].EditedFormattedValue == true) { //添加图书信息SQL语句 sb.Append("delete from bookinfo where id='"
+ dataGridView1.SelectedRows[i].Cells[1].Value.ToString() + "';"); }
展开
 我来答
yinfengnong
2013-05-09 · TA获得超过5619个赞
知道大有可为答主
回答量:2344
采纳率:89%
帮助的人:2280万
展开全部
//将for循环改成这样

for (int i = 0; i <dataGridView1.SelectedRows.Count; i++)
{
//这个if语句也要改一下
if ((bool)dataGridView1.SelectedRows[i].Cells[0].EditedFormattedValue == true)
{ //添加图书信息SQL语句
sb.Append("delete from bookinfo where id='"
+ dataGridView1.SelectedRows[i].Cells[1].Value.ToString() + "';");
}

DataGridView中选中的行总是会<=总行数的

或者改成下面这样也可以
for (int i = 0; i <dataGridView1.Rows.Count; i++)
{
//这个枝竖if语句也要姿没改一下
if ((bool)dataGridView1.Rows[i].Cells[0].EditedFormattedValue == true)
{ //添迹搭纳加图书信息SQL语句
sb.Append("delete from bookinfo where id='"
+ dataGridView1.Rows[i].Cells[1].Value.ToString() + "';");
}
clack666
2013-05-09
知道答主
回答量:37
采纳率:0%
帮助的人:13.2万
展开全部
我觉得可能是你的逻辑有点问题,上面循茄辩环的是数据集合的行,但是下面取得是选中的行,如果你没有选择任何行的话,可能就颤镇缺会报这旅燃个错误吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zly0304302
2013-05-09 · TA获得超过2462个赞
知道小有建树答主
回答量:744
采纳率:0%
帮助的人:602万
展开全部
i的范围是从0到最后1行。
也许没有选团灶中全部行,譬颂亩如说只选中了1,2行,
dataGridView1.SelectedRows,就是1个维数为2的数组,
那么i=3时,dataGridView1.SelectedRows[3],这个数组的索引就野或森超出了范围
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
leiyangbdwk
2013-05-09 · TA获得超过3295个赞
知道大有可为答主
回答量:4975
采纳率:12%
帮助的人:4368万
展开全部
datagridview默认的是行首选择,也就是说整行都高亮才称为“毁型选中”,重新选氏蔽择试试。
另外,歼余州应该先判断选中的行数是否大于0.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友9278dbf
推荐于2018-05-18 · TA获得超过1124个赞
知道小有建树答主
回答量:457
采纳率:0%
帮助的人:298万
展开全部
dataGridView1.SelectedRows[i].Cells[1].Value.ToString()
改为
dataGridView1.Rows[i].Cells[1].Value.ToString()
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式