我现在有一个需求,在一个form中有3个dbgrid,一个datasource连接到程序框架中的dataset,也就是说我不能改变dataset的任何东西。我需要在第一个dbgrid中显示dataset的全部记录,在其他两个分别以不同的条件显示部分记录。请教高手,如何解决这个问题

解决方案 »

  1.   

    dataset的filter我试过了,它是对数据集操作的,但是我不能对数据集操作,我想把数据集中的数据整体拷贝到本地再操作,但是还是不知道怎么实现??
      

  2.   

    to xftyyyyb(bin) 是的,我知道cxGrid是可以实现这些功能的,可是我要开发的程序是在一整体框架下的大型程序,所以我只能用delphi原生控件和公司自己开发的控件,不能那么自由哦
      

  3.   

    按你的要求;应该是实现不了的!
    建议加多两个dataset。
    (很了解 DBGrid 的源码修改之可能可以实现。)
      

  4.   

    用Clone方法,如:
    var MyT:TADOTable;
    begin
      MyT:=TADOTable.Create(nil);
      MyT.Clone(ADOTable1);
      DataSource2.DataSet:=MyT;
      MyT.Filtered:=true;
      MyT.Filter:='条件';