我正在使用两个不同的数据集来使用vb.net使用visual studio填充datagridview我的项目。它是Windows窗体应用程序,用于根据用户输入显示数据库中的信息。一旦显示信息,用户就可以将信息保存到专门创建的表中以存储报告信息,以便在以后调用它。我现在正在尝试回忆这些信息,因此以与以前相同的方式创建了我的数据集,现在我正在尝试调用它的新出现,这就是probelm开始的地方。代码如下。
Dim dv2 As New System.Data.DataView
dv2 = New System.Data.DataView(DataSet2.Tables(0), "Status <> ''", "",
DataViewRowState.CurrentRows)
DataTable2TableAdapter.fill(DataSet2.DataTable2, f5.ComboBox2.SelectedValue)
我有两个问题。
DataSet2.Tables(0)
:Reference to a non-shared member requires an object reference
DataTable2TableAdapter
:’DataTable2TableAdapter’ is not declared. It may be inaccessible due to its protection level.
我不知道为什么会发生这种情况,因为我在此处编写了与之前数据集相同的代码,而不是在设置时更改数据集后面的SQL语句。任何想法都会受到欢迎,因为我完全没有想法。欢迎所有问题。
谢谢
答案 0 :(得分:0)
尝试使用以下代码修复错误编号1 ....
Dim tablezero as System.Data.DataTable
'
tablezero = DataSet2.Tables(0)
您收到错误的原因是您尝试访问某个对象(表(0))并且尝试访问它的代码看不到它,如果它是SHARED则会显示它。< / p>
所以你可以通过定义和对象实例/引用然后访问该引用来解决它,在这种情况下我称之为“tablezero”(或通过使表(0)共享 - 通常不是最好的选择,除非必要 - 除了绝对必要之外,没有必要让整个班级都可以进入,除非绝对必要)
很有可能第二个错误在上面修复之后可能会消失,然后在没有你的Dataset2代码的情况下很难说出来
希望它有所帮助。