比方说dataGridView1已绑定好了数据,现在我修改了第505条记录的信息,我用dataGridView1.Refresh();好像毫无反应,但是如果我重新绑定数据的话还得手工滚动到505条才能看到修改的内容,能否在修改后通过什么刷新命令不用拖拉滚动条就能看到修改的变化?谢谢!

解决方案 »

  1.   

    恩,重新设置DataSource
    记住在重新绑定前滚动条的位置,重新绑定后再定位
      

  2.   

    如果能定位到505条,取到DataGridViewRow对象,将要修改的值赋给每一列,别用dataGridView1.Refresh()刷新,然后在后台更新数据库。
      

  3.   

    把给datagridview 设置数据源写在一个方法里,例如:
    //把这个写在一个方法里.每次添加新数据 重新调用该方法一次
    //一般是放在Load 方法里,每次更新后关闭窗体重新加载并且保存修改的datagridview的行号 
    /该行获得焦点datagridview.datasource=null;
     DataSet ds = personalManager.getPeople();
    this.dataGridView1.DataSource = ds.Tables["people"];
      

  4.   

    我可以重新绑定数据源,但数据又从头一条开始显示。假设我想在dataGridView1的第505行插入一条记录,插入后重新绑定数据源,怎样使光标再次回到505行去,也就是说,dataGridView有控制当前行号的语句吗?谢谢!