微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在没有数据库的情况下在Datagridview中搜索数据-VB.net

如何解决在没有数据库的情况下在Datagridview中搜索数据-VB.net

我已经搜索了一下,却找不到我一直在寻找的那个。

我在VB.NET中有一个DataGridView,其中包含来自MysqL数据库的数千条记录。现在,我想搜索匹配的item_description或类似输入文本的内容。我正在使用TEXTCHANGED

由于搜索需要花费很多时间,因此我没有对数据库使用搜索

样品是

Search: orange

DataGridView必须仅使用“橙色”之类的词进行过滤和显示

ITEM_ID | ITEM_DESCRIPTION

  120   | Orange Juice

  832   | Orange Fruit

我正在考虑获取“ item_description”列的数组列表名称并对其进行过滤,但是我不知道从哪里开始以及使用什么代码。谢谢

解决方法

假设您已接受我的评论中的建议,并填充了DataTable,然后通过DataGridView将其绑定到BindingSource,则过滤数据仅是设置该Filter的{​​{1}}属性。在您的情况下,应该是这样的:

BindingSource

myBindingSource.Filter = "ITEM_DESCRIPTION LIKE 'orange*'" 的{​​{1}}事件进行过滤的一个问题是,当用户只键入最后一个字符时,如果用户键入多个字符,则将过滤多次。为了缓解这种情况,我建议使用TextChanged,每次键入一个字符时都启动/重新启动,然后在TextBox时对其进行过滤。这将使用户能够键入多个字符而无需过滤,但是在他们停止键入要完成的过滤之后,也无需花费大量时间。我建议间隔为250毫秒左右,但是您可以尝试看看自己认为最好的间隔。例如

Timer

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。