我是用DCOM连接SQLServer2000数据库,采用3层设计。当数据发生改变时,我将DBGrid对应的数据源clientdataset close又open(clientdataset连接服务器端的query),可是表格仍然不能每次都更新,也就是说有时候会及时更新,有时候不会,但是只要有一次好用,以后都好用了。我怀疑是delphi的bug。
    不知道大家有没有遇到类似的问题,我本来在服务器端是用table,然后在客户端过滤,一样的问题。我怕是filter不稳定,改用query,还是一样。问题虽然不大,重新运行就可以了,但是的确很挠头,请问各位大侠有没有解决的办法?

解决方案 »

  1.   

    好老的帖子阿 试试这个
    InvalidateRect (MyControl.Handle, NIL, False);
    InvalidateRect (MyControl.Handle, NIL, True);
      

  2.   

    我也遇到过这要的问题,结构为dbExpress+mssql,不知能不能归为一类:
    我用一个ComboBox,当选择某项时生成一个filter,filter一个cds,每次我都要选两次条件才能出现数据:第一次清空、第二次出现满足条件的的记录。当我把它放在一个按钮中生成时,根本就是空的!而我以前却好好的!