vb.net - 使用数据集以编程方式在 VB.NET 中加载 datagridview

标签 vb.net datagridview dataset populate

我创建了一个数据 GridView ,dataGridReport在 VB 2010 的设计器 View 中。
然后我使用查询来填充数据集,我希望这个数据集填充 datagridview ......但它似乎不起作用。

这是我的代码:

Dim con As New OleDb.OleDbConnection
con.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;
                         Data Source=C:\Users\Administrator\Documents\MenuDB.accdb"
con.Open()
Dim ds As DataSet = New DataSet
Dim adapter As New OleDb.OleDbDataAdapter
Dim sql As String

sql = @"SELECT OrderDate, MenuItem 
        FROM   MenuItems, Orders 
        WHERE  Orders.itemID = MenuItems.ID 
           AND Format(Orders.OrderDate,'mm/dd/yyyy') >= #" + fromDate + "# 
           AND Format(Orders.OrderDate,'mm/dd/yyyy') <= #" + toDate + "#"

adapter.SelectCommand = New OleDb.OleDbCommand(sql, con)
adapter.Fill(ds)
dataGridReport.DataSource = ds

我知道现在缺少一些东西 - 我环顾四周,大多数人似乎使用 dataGridReport.DataSource = ds.Tables('somereference') 之类的东西

但是我的数据集是从连接两个表的查询中动态创建的数据集,它不是存储在项目数据源中的东西。我也没有通过其属性将 datagridview 绑定(bind)到任何数据源。我错过了什么?

(顺便说一句,sql查询是正确的,我已经测试过了,返回了预期的结果)。

最佳答案

您可以通过索引从数据源中获取表:

dataGridReport.DataSource = ds.Tables(0)

关于vb.net - 使用数据集以编程方式在 VB.NET 中加载 datagridview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13544462/

相关文章:

c# - 从数据库中获取数据的问题

vb.net - 如何防止在 XML 文字 (VB.NET) 中嵌入表达式的 HTML 编码?

c# - .NET 富文本框中的彩色文本

Visual Studio 中的 C# : How to display a list in a DataGridView? 得到奇怪的东西

.Net 在运行时重新排序 DataGridView 列

C# 绑定(bind)文本框不会使用 tableadapter update 更新

C# 将数据集插入 SQL 数据库

asp.net - asp.net 中的数据屏蔽

asp.net - 从 ASP.net 页面上的集合输出数据的最佳实践是什么?

c# - 无法编辑 DataGridView 单元格,验证事件集 e.Cancel = true