日期:2014-05-18  浏览次数:20809 次

datagridview的问题
C/S模式,datagridview1绑定到了dataset的table[0]上。
数据库中增加一条记录A后,我根据A的主键,在table[0]中添加了对应的row。
datagridview就出现了一种怪怪的情况,假设这个row正好加在了当前窗口的工作区,如:当前窗口显示了第20-30条记录,这个记录正好加在第25条的位置,如果不调用datagridview.refresh(),新加的记录在界面不会显示出来,原来的第25条记录点击后也不能被选中。调用refresh后就没问题了。

有没有既不调用datagridview.refresh(),又能将新记录添加到界面的方法?

貌似在这种情况下,不能直接对datagridview.rows进行add和remove操作

------解决方案--------------------
貌似dataset没有更新 所以页面显示的是以前的绑定数据
------解决方案--------------------
加一个bindingsource控件,datagridview数据源指向它,它的数据源指向dataTable

------解决方案--------------------
=======================
顶3 .我还没有遇到过这种情况..

重新绑定一下 就好了
------解决方案--------------------
==================
DataTable dt = this.dataGridView1.DataSource as DataTable;
DataRow dr = dt.NewRow();
dr[0] = 8;
dr[1] = 8;
dt.Rows.InsertAt(dr, 8);
我试了一下 好像没有问题啊 .. 你是不是 对DAtaGridView 的属性做了 什么限制..