You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用BindingSource筛选DataGridView中的空白单元格?

解决BindingSource筛选DataGridView空白单元格的问题

我太懂这种卡壳的感觉了——明明常规筛选没问题,偏偏空白单元格就是筛不出来。核心原因在于你没考虑到数据源里的“空白”其实有两种常见情况:数据库返回的DBNull.Value,或者程序里生成的空字符串"",你之前试的IS null只能匹配前者,空字符串自然就被漏掉了。

给你几个直接能用的解决方案:

1. 同时匹配Null和空字符串

这是最稳妥的写法,直接把两种空白情况都包含进去:

BindingSource bs = new BindingSource();
bs.DataSource = Dgv_Data_List.DataSource;
// 关键筛选条件:覆盖Null和空字符串
bs.Filter = "Test IS NULL OR Test = ''";
Dgv_Data_List.DataSource = bs;

2. 通过长度判断空白

如果你的Test列是字符串类型,还可以用长度来筛选,效果和上面一样:

bs.Filter = "LEN(Test) = 0 OR Test IS NULL";

额外小提醒

你代码里的Dgv_Data_List.Columns.Clear();其实没必要,直接重新绑定BindingSource后,DataGridView会自动更新显示筛选结果,清空列反而可能把你之前设置的列样式、宽度这些自定义配置搞丢。

内容的提问来源于stack exchange,提问作者Frank

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.01 02:47:34