例如:
string strFilter = "ColA = 'Testing' and colB = 35.7 and colC > '2006/01/01'";
DataGrid.Filter(strFilter);能实现这样的一个根据过滤条件进行过滤的方法.
1.过滤后只显示过滤后的数据.
2.过滤后被过滤的数据隐藏起来了,或者说是被保存到一个保存过滤数据的缓冲区.
3.过滤后对应DataGrid上的一些计算字段值能相应改变.

解决方案 »

  1.   

    vs2005里可以通过BindingSource过滤的。BindingSource bs = new BindingSource();
    bs.DataSource = yourDataTable; (你的数据表)
    bs.Filter = "ColA = 'Testing' and colB = 35.7 and colC > '2006/01/01'";想显示全部时bs.Filter=null;就可以了。跟楼主问题没什么直接关系。只是希望关注一下BindingSource.
      

  2.   

    用现在绑定的datatable按照现在的filter去生成dataview,然后用dataview去绑定datagrid。
      

  3.   

    to brightheroes:希望过滤的原因就是不希望再刷数据库.
    to namhyuk:可惜我在2003没有找到类似功能
     to Knight94:再看看,没办法就试试.
      

  4.   

    招.net开发工程师,有兴趣的可以投递简历至: 
    [email protected]
      

  5.   

    to brightheroes:希望过滤的原因就是不希望再刷数据库.我说的,跟Knight说的是一个意思……
      

  6.   

    同意愚翁的
    用现在绑定的datatable按照现在的filter去生成dataview,然后用dataview去绑定datagrid。
      

  7.   

    用现在绑定的datatable按照现在的filter去生成dataview,然后用dataview去绑定datagrid。