vb.net - 如何在没有任何数据库的情况下在 Visual Basic 中过滤 GridView
问题描述
我在互联网上做了很多研究,并在 VB.NET 中找到了很多关于“如何过滤/排序 GridView”的教程,但是,所有主题都使用数据库。
就我而言,我只有这些:
- MP3Song : 一个自定义类,具有“Title”、“Artist”、“Duration”等属性。
- A List(Of MP3Song) :它像这样链接到我的 GridView :
myMP3Collection = New List(Of MP3Song.MP3Song)
mp3SongBinndingSource.DataSource = myMP3Collection
我使用 a 是List(Of ...)
因为当我填充此列表时,我会进行一些验证,并且可能会修改一些“已添加”的数据。这对我来说很容易:
myMP3Collection.ElementAt(i).Extd = True 'Extd is a Boolean property, others are string...
在我的研究中,我发现我应该使用 DataSet(更容易过滤/排序 GridView)。这是我的问题:
- 我是否应该
DataSet
根据我的收藏制作一个(由For Each
扫描我的列表填充,并将所有项目添加row
到我的表中 - 或者我应该尝试直接填充 a
DataSet
而不是 aListOf()
。如果第二个选择更好,那么使用集合访问和修改一行中的元素是否容易?
谢谢你的时间 :)
解决方案
Tim Van Wassenhove 的FilterList正是您所需要的。他将 List(Of T) 扩展为 SortableBindingLists 和 FilterLists。
虽然他的代码是 C#,但您可以轻松使用在线转换器。或者,创建一个 C# .DLL,使用代码,然后从您的 VB.NET 应用程序中引用该 .DLL。
推荐阅读
- django - BSModalDeleteView (django-bootstrap-modal-form) 忽略 get_success_url
- c# - 有没有办法在 Kafka 中回滚已提交的偏移量?
- c++ - C++ 打开一个没有库的窗口
- java - 如何在 SharedPreferences 中存储来自 url 的 JSONObject
- fuzzy-logic - 模糊规则视图
- python - Django 如何添加自定义位置字段?
- c# - 字典中的 IDataErrorInfo 验证属性
> 更多型号。即PersonModel、CityModel - algorithm - Rust 没有使用 read_line 正确接受输入
- browser - UiPath:找不到与此选择器对应的 UI 元素
- c# - 在 C# .NET Core 中访问 JSON 中的嵌套数组