datagridview 选中行问题

datagridview显示问题_c#吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:53,155贴子:
想做一个自动刷新的功能
这是窗体datagridview自动加载的代码
dataset = TeacherDao.GetStudentInfo();
studentdgv.DataSource = dataset.Tables["studentinfo"];这个能够正常显示数据然后我修改了数据之后先清空原有的数据再显示新的数据this.studentdgv.Columns.Clear();dataset = TeacherDao.GetStudentInfo();studentdgv.DataSource = dataset.Tables["studentinfo"];数据只会修改成功就不能显示了如果去掉this.studentdgv.Columns.Clear();数据就会把修改后的再显示一次 和没修改的显示在一起了这是为什么阿 谢谢
this.studentdgv.Columns.Clear();这句不要studentdgv.DataSource = dataset.Tables["studentinfo"];前面加上studentdgv.DataSource=
我试了一下 原来的数据不会消失 新的数据没有问题
单独写一个 绑定数据的方法啊。 然后调用就是了, 在每次调用之前 清空 DataGridView 里面的 数据,然后 调用 绑定的方法 就行了。也就是 刷新了 。
if (result == 1)
MessageBox.Show("修改成功");
studentdgv.DataSource =
studentdgv.Refresh();
dataset = TeacherDao.GetStudentInfo();
this.studentdgv.DataSource = dataset.Tables["studentinfo"];
}我这样写还是不行..
就是this.studentdgv.Columns.Clear();之后 再显示就显示不出来了..
dataset.Tables["studentinfo"].Clear(); 加了一句这个就正常了 为什么...
你要清空的 是 你填充 表的 那个数据, 所以清空的是表里面的数据,而不是 this.studentdgv.Columns.Clear(); 这样是 把 DataGridView的列,你把控件 里的列 都给 清空了,这样 还能 显示 数据吗? 懂?
哦 原来如此 懂了懂了 ~~~~
呵呵,恩,懂了就好。
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或已经把这个错误信息Email给管理员了,我们会尽早解决这个问题
如果你持续遇到这个错误,请到bug王杰瑞 的BLOG
用户名:王杰瑞
文章数:91
评论数:425
访问量:270905
注册日期:
阅读量:1451
阅读量:5963
阅读量:881
[匿名]程序:
[匿名]icecream:
[匿名]icecream:
[匿名]51cto游客:
[匿名]51cto游客:
51CTO推荐博文
低级错误!本来想实现一个简单的应用。在DataGridView控件中,加入CheckBox列实现多选删除。
开始的思路,遍历CheckBox列,如果打了勾则进行删除操作:
&&&&&&&&&&& for (int i = 0; i & dataGridView1.Rows.C i++)&&&&&&&&&&& {&&&&&&&&&&&&&&& object obj = dataGridView1.Rows[i].Cells[0].V&&&&&&&&&&&&&&& string select = obj == null ? "" : obj.ToString();&&&&&&&&&&&&&&& if (select.Trim() == "1")&&&&&&&&&&&&&&& {&&&&&&&&&&&&&&&&&&&&//在这里从数据源中删除数据行&&&&&&&&&&&&&&& }&&&&&&&&&&& }
测试发现时而准,时而不准,引起警觉,恍然大悟,这绝对是个低级错误啊。因为数据绑定控件有个方便的特性,数据源的变化可以直接体现到控件的表现上,可是在这里,方便变成了不方便,它会导致遍历的不准确。
第二种思路,先收集选择的条目,然后进行统一删除。
&&&&&&&&&&& for (int i = 0; i & dataGridView1.Rows.C i++)&&&&&&&&&&& {&&&&&&&&&&&&&&& object obj = dataGridView1.Rows[i].Cells[0].V&&&&&&&&&&&&&&& string select = obj == null ? "" : obj.ToString();&&&&&&&&&&&&&&& if (select.Trim() == "1")&&&&&&&&&&&&&&& {&&&&&&&&&&&&&&&&&&& DataRowView drv = dataGridView1.Rows[i].DataBoundItem as DataRowV&&&&&&&&&&&&&&&&&&& SelectRow.Add(drv.Row);//SelectRow缓存选中的数据源行&&&&&&&&&&&&&&& }&&&&&&&&&&& }&&&&&&&&&&& foreach (DataRow dr in SelectRow)&&&&&&&&&&& {&&&&&&&&&&&&&&& _Reasons.Rows.Remove(dr);&&&&&&&&&&& }
这样就OK啦。
&本文出自 “” 博客,请务必保留此出处
了这篇文章
类别:┆阅读(0)┆评论(0)
15:40:45 15:11:25 08:47:20DataGridView不显示的问题
花一个小时做晚饭,十五分钟吃完,抽两个烟,先写个技术文章罢。
做个小软件自己用,使用Vs2008的DataGridView(WinForm里有,功能与WebForm的GridView类似),碰到了一个很奇怪的问题,代码里设置了DataGridView的DataSource为一个DataTable对象,DataTable对象里加了DataRow,但是DataGridView就是不显示。
内事不决问百度,外事不决问Google,可惜我百度Google都用上了,还是不能找到答案,有个有参考价值的,提问者最后解决了问题,可是方式确实“在Vs2008下新建了一个项目,就没这问题了”,其他的没有太多参考价值。无语了半天,怀疑了半天是不是微软的大牛们出bug了,还好最后运气不错,发现了原因。
我使用界面编辑器添加DataGridView时,设置了它的DataSource不为空。这就是原因,将DataSource设置空后,就一切OK了。
这是为什么呢?我不是太懂DataGridView的内部机制,也说不出个所以然来,但是总而言之,是解决问题了。网上没有,哪位碰到类似问题的兄弟姐妹,如果能够百度到我这来,希望不虚此行罢。PS:百度Goolge半天不能解决问题实在是太郁闷了。
见图,DataSource要设置为none才行
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。关于dataGridView1多选框的问题
[问题点数:40分,结帖人l]
关于dataGridView1多选框的问题
[问题点数:40分,结帖人l]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关帖子推荐:
本帖子已过去太久远了,不再提供回复功能。}

我要回帖

更多关于 datagridview 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信