如何使用VB.NET将SQL查询的结果连接到导航栏?

时间:2011-11-21 11:20:17

标签: vb.net navigationbar

我有一个关于在Visual Basic中使用数据库的基本问题。 我正在使用OleDb连接。我拖放了编辑框 从DataDource视图。这会自动放置表格导航 - 表格上的栏。当我运行它时,这很好。 但是,我希望能够使用SQL语句在表中进行搜索。 如何将SQL查询的结果连接到导航栏,以便这样做 编辑框自动获取记录的值而不必 手动分配每个文本框?

非常感谢。

1 个答案:

答案 0 :(得分:0)

这个小片段似乎有用,虽然你必须为你的表指定Sort列,如果你想按多个字段排序,那么在Find调用上传递一个Object()类型数组,这些类型对应于这些值您正在搜索(按排序值的顺序。请告诉我它是否适合您或您是否有任何其他问题。

'**** Sample table structure for Database1Dataset.Table1
'   Col1        Col2        Col3
'(row)  "Row1.Col1" "Row1.Col2" "Row1.Col3"
'(row)  "Row2.Col1" "Row2.Col2" "Row2.Col3"
'(row)  "Row3.Col1" "Row3.Col2" "Row3.Col3"

Dim dv As DataView = Me.Database1DataSet.DefaultViewManager.CreateDataView(Database1DataSet.Table1)
dv.Sort = "Col1"

Me.Table1BindingNavigator.BindingSource.Position = dv.Find("Row2.Col1")

以下是多个排序列的示例

Dim dv As DataView = Me.Database1DataSet1.DefaultViewManager.CreateDataView(Database1DataSet1.Table1)
Dim FindValues(1) As Object

dv.Sort = "Col1,Col3"

FindValues(0) = "Row2.Col1"
FindValues(1) = "Row2.Col3"

Me.Table1BindingNavigator.BindingSource.Position = dv.Find(FindValues)