CxGrid可以自己排序 或是 过虑 
但这样过虑或排序后 对应的 AdoQuery并没有作相应的过虑 或排序
因为我需要过虑或排序后直接打印出来。请问有什么方法 或是 CxGrid有这么一个属性设置 让它们同步呢?谢谢

解决方案 »

  1.   

    请参照我的Blog
    http://hi.baidu.com/cncharles/blog/item/dd3667f09a229baea40f5222.html
    描述: cxGrid的 TableView 数据排序与对应的数据集同步, 该方法主要用于打印时
         //       的排序与所见到的排序保持一致;
         //参数: @tv: 排序的cxGridTableView
         //说明: @tv: 对应的数据集只支持 ADOQuery与 ClientDataSet;
         procedure cxGridSortSyncToDataSet(tv: TcxGridDBTableView); overload;     //描述: 功能同上, 实现代码一样, 如果有更改就同步更改
         procedure cxGridSortSyncToDataSet(tv: TcxGridDBBandedTableView); overload;
      

  2.   

    实在就这么点分了 sorry
    不过我已经用其它的方法解决了
    使用了
    cxGrid的两个事件 一个是Filter.Change
    一个是 SortChanged
    然后分别 对 AdoQuery进行 过虑和排序