Public Class Form1
Private tabControl1 As System.Windows.Forms.TabControl
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim cn As New System.Data.SqlClient.SqlConnection
Dim sql As System.Data.SqlClient.SqlCommand
Dim da As SqlClient.SqlDataAdapter
Dim ds As DataSet
Dim dt As DataTable
cn.ConnectionString = "Server=(local);database=AdventureWorksLT2008;Integrated Security=SSPI;"
cn.Open()
sql = cn.CreateCommand
sql.CommandText = "SELECT * FROM INFORMATION_SCHEMA.TABLES"
da = New SqlClient.SqlDataAdapter(sql.CommandText, cn)
ds = New DataSet
da.Fill(ds, "dataset")
Dim temp_TabPage As System.Windows.Forms.TabPage
Dim dr As DataRow
Dim da2 As SqlClient.SqlDataAdapter
Dim ds2 As DataSet
Dim temp_DataGridView As System.Windows.Forms.DataGridView
Me.Controls.Add(tabControl1)
For Each dr In ds.Tables("dataset").Rows
temp_DataGridView = New System.Windows.Forms.DataGridView
temp_DataGridView.Dock = System.Windows.Forms.DockStyle.Fill
sql.CommandText = String.Concat("SELECT * FROM ", dr(1),".", dr(2))
da2 = New SqlClient.SqlDataAdapter(sql.CommandText, cn)
ds2 = New DataSet
da2.Fill(ds2, "dataset2")
temp_DataGridView.DataSource = ds2
temp_DataGridView.DataMember = "dataset2"
temp_TabPage = New System.Windows.Forms.TabPage()
temp_TabPage.Controls.Add(temp_DataGridView)
temp_TabPage.Text = String.Concat(dr(2))
tabControl1.Controls.Add(temp_TabPage)
Next
cn.Close()
sql.Dispose()
cn.Dispose()
End Sub
End Class