• cxGrid控件过滤筛选后如何获更新筛选后的数据集


    cxGrid控件过滤筛选后如何获更新筛选后的数据集

     (2015-06-19 12:12:08)
    标签: 

    delphi

     

    cxgrid筛选数据集

     

    cxgrid过滤

    分类: Delphi

    cxGrid控件功能非常强大,很多人在使用,受到广大程序员的青睐,然而有时因为其功能强大,很多东西让开发人员一时摸索不出来,比如它的筛选功能。筛选功能使用方便,灵活,但是它默认筛选过后数据集并没有更新。简单验证法,筛选之前数据是20条记录,筛选过滤后显示的是10条记录,筛选过后查询绑定的AdoQuery的RecordCount,你会发现该值还是20,AdoQuery没有更新。

    那么如何让AdoQuery筛选过后更新到和当前显示数据一致呢?有两种方法:

    例:控件cxGrid1的cxGridDBTableView1绑定Ado组件AdoQuery1。设置cxGridDBTableView1的OptionsCustomize中的ColumnFiltering属性为True,然后设置需要筛选列的Options中的Filtering属性为True,这样就可以通过该列实现刷选过滤功能。

    1.在cxGridDBTableView1的DataControllerFilterBeforeChange事件中写代码

      AdoQuery1.Filtered := True;
             AdoQuery1.Filter := AFilterText;

    2.直接设置cxGridDBTableView1的属性实现,这个属性一般比较难找到。

    在cxGridDBTableView1属性栏找DataController ——>Filter——>AutoDataSetFilter设置为True即可。

    通过以上方法可以通过过滤前后AdoQuery1的RecordCount来验证一下。

    注:AdoQuery1如果是手动创建的,在该窗体的FormClose事件中把AdoQuery1的AdoQuery1属性再设置为原有状态,不然下次打开该窗口查询会报错。

  • 相关阅读:
    哈希值
    webpack配置(二)
    点击input选中文本
    height:calc(100%
    -webkit-overflow-scrolling
    字符串转数组
    gulp报错160
    webpack配置(一)
    移动端ios中click点击失效
    Spring定时器Quartz的用法
  • 原文地址:https://www.cnblogs.com/westsoft/p/8679726.html
Copyright © 2020-2023  润新知