| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 682 人关注过本帖
标题:datagridview问题
只看楼主 加入收藏
ycw0215
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-2-3
收藏
 问题点数:0 回复次数:7 
datagridview问题
for (int i = 0; i <datagridview.SelectedRows.Count; ++i)
{
//MessageBox.Show(datagridview.SelectedRows[i].Index.ToString());
dataset.Tables[0].Rows[datagridview.SelectedRows[i].Index].Delete();
}
dataset.Tables[0].AcceptChanges();

为什么我在循环中用dataset.Tables[0].Rows[datagridview.SelectedRows[i].Index].Delete();语句删除多行时,总是会跳出一行删一行。
但用MessageBox.Show(datagridview.SelectedRows[i].Index.ToString());测试选中的行时,确实是每行都选中的啊,真是怪事。
有人碰到过这种情况吗?
搜索更多相关主题的帖子: datagridview 
2007-04-12 22:17
liuminghui
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:2882
专家分:0
注 册:2007-1-26
收藏
得分:0 
for (int i = 0; i <datagridview.SelectedRows.Count; ++i)
{
//MessageBox.Show(datagridview.SelectedRows[i].Index.ToString());
dataset.Tables[0].Rows[datagridview.SelectedRows[i].Index].Delete();
}
dataset.Tables[0].AcceptChanges();

为什么我在循环中用dataset.Tables[0].Rows[datagridview.SelectedRows[i].Index].Delete();语句删除多行时,总是会跳出一行删一行。//表示你的语句每次运行时只执行一次,单步调试看看 是不是每行都能选中;
但用MessageBox.Show(datagridview.SelectedRows[i].Index.ToString());测试选中的行时,确实是每行都选中的啊,真是怪事。
有人碰到过这种情况吗?

海鸽 is My Lover!!
2007-04-13 08:40
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
你把 dataset.Tables[0].AcceptChanges(); 放到 for 里面去试试

飘过~~
2007-04-13 09:07
liuminghui
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:2882
专家分:0
注 册:2007-1-26
收藏
得分:0 

海鸽 is My Lover!!
2007-04-13 09:08
liuminghui
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:2882
专家分:0
注 册:2007-1-26
收藏
得分:0 
应该没有什么问题了吧

海鸽 is My Lover!!
2007-04-13 09:08
初学Delphi
Rank: 3Rank: 3
等 级:新手上路
威 望:9
帖 子:330
专家分:0
注 册:2006-4-4
收藏
得分:0 
我给你个办法吧
循环还是一样循环
只不过把循环里面的
dataset.Tables[0].Rows[datagridview.SelectedRows[i].Index].Delete();
这里就别用i了
用0
因为你删除了第i行
i+1就变成了第i行
然后你又去删除
i+1行(也就是原来的i+1行)
删除到一半的时候就会提示没有实例。
你一直删除第一行就不会出现这样的问题了
2007-04-13 09:22
liuminghui
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:2882
专家分:0
注 册:2007-1-26
收藏
得分:0 
不是的啊,你这样不好的 楼主要有选择的删除 每次都删除第一行哪能行

海鸽 is My Lover!!
2007-04-13 09:25
从小到大
Rank: 1
等 级:新手上路
威 望:2
帖 子:200
专家分:0
注 册:2006-6-24
收藏
得分:0 

for (int i = datagridview.SelectedRows.Count-1; i 〉=0; i--)


2007-04-14 23:38
快速回复:datagridview问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035151 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved