在三层结构中,我用dbgird显示数据,刚进入form的时候,我把clientdataset设置为true,这样子的话,dbgird就会从数据库中把数据读出来,但是我不想一进入的
时候就把数据读出,可是clientdataset又不能设为false,谁能告诉我怎么做?
还有,我在客户端添加记录,当更新数据库后,我只想在dbgrid框里显示刚更新的数据,而不想把数据库的其他记录读下来,怎么办??

解决方案 »

  1.   

    你可以先把dbgrid的datasource 设置为空,什么时候想让它显示,什么时候给它指定datasource.
      

  2.   

    你可以用别的方式显示数据集里的当前数据阿如果要用dbgrid显示 显示的当然是整个clientdataset的数据了
    如果你非要用dbgrid显示当前的记录,那么你可以尝试过滤clientdataset,
    限制过滤后的clientdataset里的记录为你新添加的记录。
      

  3.   

    to nnx:
    能不能告诉我具体怎么做??就是那个过滤。
      

  4.   

    dbgrid1.datasource.dataset.refreshrecord只刷新当前记录,一条一条的这样做,就不会更新其他记录
      

  5.   

    楼主又想让Grid 里有数据又不想让dataSet取数据,怎么可能,
    关于数据量的问题可以先读100笔,用户拉滚动条的 时候再读下面的 2楼主既然是更新了 数据Applyupdata,那Grid显示就是最新的记录啊,除非网络上
    有其他人在做相同的操作。
      

  6.   

    可以用普通的网格控件啊,或者用listview