如何根据搜索到的字符串过滤列表框中的项目

2024-03-26

我有一个 Windows 窗体应用程序 (C#),其中包含一个列表框,我在其中添加了一些项目(我没有使用数据源)。我想过滤 ListBox 中的项目以仅显示包含我正在搜索的字符串的项目。

我通过保留原始项目的列表并在每次搜索字符串更改时从该列表中选择匹配的项目并更新 ListBox.Items 来完成此操作

有没有更优雅/更有效的方法来做到这一点?


有没有更优雅/更有效的方法?

不,不是真的。

您可以通过具有 Filter 和 Sort 属性的 BindingSource 进行连接,但这不适用于简单的 List。所以你必须使用像 DataTable 这样的东西,但这不会是一个改进。

您当前的方法似乎很好,特别是如果您可以使用 LINQ 来过滤列表。

但我希望您不要每次都循环遍历 Items 属性,只需将筛选后的列表分配给 Listbox1.DataSource 即可。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何根据搜索到的字符串过滤列表框中的项目 的相关文章

随机推荐