如何使用名称的变量在运行时创建多个DataGridViews

时间:2016-12-30 19:12:33

标签: vb.net variables datagridview

我一直在寻找2天的答案,但到目前为止找不到有效的答案。这就是我想要做的事情:

我已经使用VB.NET将excel工作表列表读入数组 现在我想为每个工作表创建一个DataGridview,但我无法弄清楚如何使用工作表名称作为变量从数组中创建DataGridView。

我尝试了以下内容:

Dim dgvName as String = array(0)
Dim dgvName As New DatGridView

For x = 0 to array.length -1
   Dim array(x) As New DataGridView
Next

这些都不起作用。

任何人都可以解释我是如何做到这一点的吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

我不会创建多个DataGridViews,因为它太重了。您很可能会在当时查看一个工作表,只需更改其DataSource即可在单个网格视图中执行此操作。

以下是您通常需要做的事情

  1. 使用Microsoft.Ace.OleDb提供程序连接到Excel(连接)
  2. 使用OleDbDataAdapter填充DataSet。 #1中提供者的美妙之处在于您可以像使用任何数据库表一样使用Excel,即Select * from sheet_name
  3. 填写DataSet后,每个DataTable代表工作簿中的工作表,您指定gridView.DataSource = dataSet.Tables(0)
  4. 创建逻辑,用户点击某些内容并更改dataSet.Tables(index)中的索引。这样你就可以拥有一个网格。
  5. 您可以轻松研究列表中的每个项目。这方面有很多资源。