我是编程新手,尤其是VB,我试图制作一个CSV阅读器,我可以用一个搜索框来过滤所有的内容。下面是我用我的CSV文件加载到一个DataGrid的代码:VB.net过滤器datagrid动态
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
SetupDataGridView()
'Dim csvpath As String = Application.StartupPath & "\csvtest.csv"
Dim csvpath As String = "c:\songs.csv"
Using MyReader As New Microsoft.VisualBasic.FileIO.TextFieldParser(csvpath)
MyReader.TextFieldType = FileIO.FieldType.Delimited
MyReader.SetDelimiters(",")
Dim currentRow As String()
While Not MyReader.EndOfData
Application.DoEvents()
Try
currentRow = MyReader.ReadFields()
With songsDataGridView
.ColumnCount = 2
Dim row As String() = New String() {currentRow(0), currentRow(1)}
.Rows.Add(row)
End With
Catch ex As Microsoft.VisualBasic.FileIO.MalformedLineException
MsgBox("Line " & ex.Message & _
"is not valid and will be skipped.")
End Try
End While
End Using
End Sub
这种负荷的艺术家和标题与2列GridView和我可以单击列标题和排序就好了。我现在想要做的就是使用我的搜索框(TextBox1),当我输入任何东西时,让不匹配的结果消失,只留下我的搜索词。我想匹配艺术家或标题。然后,当您清除搜索框时,我想回到显示CSV文件(原始gridview)的所有内容。
我到处搜索,找不到我想要的东西。很多数据库和SQL的东西,但不是我想要的数据网格。
有没有人有任何可能的帮助?另外,以我处理它的方式处理这个问题是最好的方法吗?将所有条目加载到gridview需要花费几秒钟的时间,所以我不知道是否最好先将它们加载到数组中,然后过滤它或应该如何工作。有12,000首歌曲,所以需要一点。数组是否太大?
,所以我想我有一个问题两个部分:
我在做它最有效的/最好的方法是什么?
如何根据需求过滤结果(无论它是否通过某个数组在我的网格上)。超级新编程,也。
非常感谢您的帮助!
谢谢,我在加载CSV到数据表时遇到问题。代码似乎不同于将其加载到gridview中。此外,我有一个问题,获取gridview过滤。有什么机会可以发表你上面提到的例子吗?我不确定在哪里放置您提到的代码。由于我没有空间在这里粘贴我的代码,所以这里是一个链接到它的屏幕截图,有问题的部分[链接] http://tinyurl.com/7bnkwtx – user1340081 2012-04-18 13:29:33