VB.Net datatable/dataview排序错误

VB.Net datatable/dataview排序错误,vb.net,datagridview,Vb.net,Datagridview,首先,我不是一个程序员,我自己认为自己是VBA,然后是VB.net,读了一些关于这个主题的书,但我远非专家,有时我会迷失在术语中,所以请耐心等待我 我有两个要排序的数据表。它们非常相似,包含相似的数据,但一个用于高索引数据,另一个用于低索引数据。它们从解析出的文本文件加载,并绑定到两个不同的DataGridView 我想我已经搞定了排序部分,但是每次我试图运行代码时,高索引数据表都会生成一个错误。虽然名称(列、表等)不同,但低索引表和高索引表都非常相似,在所有实例和用途中,它们的行为应该相同 示

首先,我不是一个程序员,我自己认为自己是VBA,然后是VB.net,读了一些关于这个主题的书,但我远非专家,有时我会迷失在术语中,所以请耐心等待我

我有两个要排序的数据表。它们非常相似,包含相似的数据,但一个用于高索引数据,另一个用于低索引数据。它们从解析出的文本文件加载,并绑定到两个不同的DataGridView

我想我已经搞定了排序部分,但是每次我试图运行代码时,高索引数据表都会生成一个错误。虽然名称(列、表等)不同,但低索引表和高索引表都非常相似,在所有实例和用途中,它们的行为应该相同

示例代码:

    Dim dtvSorted1 As DataView
    Dim dtvSorted2 As DataView

    dtvSorted1 = New DataView(tblLowData)
    dtvSorted1.Sort = "Point Low ASC"
    grdLowData.DataSource = dtvSorted1

    dtvSorted2 = New DataView(tblHighData)
    dtvSorted2.Sort = "Point High ASC"
    grdHighData.DataSource = dtvSorted2 <- Stops on this line only.
Dim dtvSorted1作为数据视图
Dim dtvSorted2作为数据视图
dtvSorted1=新数据视图(tblLowData)
dtvSorted1.Sort=“点低ASC”
grdLowData.DataSource=dtvSorted1
dtvSorted2=新数据视图(tblHighData)
dtvSorted2.Sort=“点高ASC”
grdHighData.DataSource=dtvSorted2解决了这个问题


每个DataGridView位于选项卡控件的不同选项卡上。不确定原因,但除非选中该选项卡,否则不会将数据源设置为dataview。在尝试绑定数据源之前,我必须以编程方式切换到另一个选项卡。

这个问题可能是因为您的字段名有一个空格。我不知道排序方法需要使用什么,但请尝试在字段名周围使用单引号或方括号[]。谢谢您的回复。排序功能工作正常,我可以看到数据在数据可视化工具中正确排序,这是最后一行出现问题。我也试过你的建议,运气不好…所以,如果你注释掉排序行,你不会得到错误?你能在错误点添加完整的堆栈跟踪吗?我已经找到了!谢谢你的帮助。两个DataGridView都位于选项卡控件的不同选项卡上。不确定原因,但除非选中选项卡,否则不会将数据源设置为dataview。在尝试绑定数据源之前,我必须编程切换到另一个选项卡。再次感谢。请解释一下你是如何解决问题的。你的贡献对未来的求职者可能很有价值。