如何让c#winform 根据datagridview数据筛选 filter

2024-11-27 19:52:57
推荐回答(2个)
回答1:

微软自带的datagridview并没有filter功能,要么换个第三方控件,要么自己重新封装,自己实现。

回答2:

1、筛选某个字段满足指定条件的记录
DataView dv = myDs.Tables[0].DefaultView;
dv.RowFilter = "Year=1427";
gv.DataSource = dv;
Year这个是myDs.Tables[0]的一个字段。这样就是只有Year的值等于1427的记录绑定gv控件。
2、用RowFilter对指定列进行模糊匹配
我们都知道sql语句里面有like '%x%' 这样的表达式可以对列进行模糊查询。其实DataView的RowFilter也可以的代码:
dv.RowFilter="Name like '%lanhusoft%'";
这样dv只显示Name字段包含lanhusoft的数据行。
3、多个条件筛选行
RowFilter还可以有多个条件,比如:
dv.RowFilter="Name like '%lanhusoft%' and Year=1427","and"将两个条件结合起来了,表示只返回两个条件要同时满足的
的行记录。