Zdravím všechny na fóru a měl bych otázku. Celý víkend jsem se trápil s DataGridView. A už fakt nevím jak dál. Poradil by prosím někdo ze zkušených harcovníků? Snažím se o to, načíst externí mdb přes DataAdapter OleDB do DataTable. Až potud zdá se všechno ok. Když ale jsou data "nalita" v DataTable, prostě zaboha mi nejdou napojit a zobrazit v DataGridView... resp. Nevím co dělám špatně. Jako nouzovku jsem to zkoušel testnout a načítat do ListBoxu jen pro kontrolu zda DataAdapter pracuje, a to se zdá že jo. Data se v ListBoxu objeví. Ale proč to nejde v DataGridView...viz níže?
Imports System.Data.OleDb
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'definice spojení
Dim con As New OleDb.OleDbConnection( _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\MyTestDbf.mdb")
'definice dotazu
Dim cmd As New OleDb.OleDbCommand( _
"SELECT * FROM [Tabulka1]")
cmd.Connection = con
'definice DataAdapteru a DataTable
Dim DataAdapter As New OleDb.OleDbDataAdapter(cmd)
Dim DataTable As New DataTable()
'nalít data přes DataAdapter do DataTable
DataAdapter.Fill(DataTable)
'=========================================
DataGridView1.DataSource = DataTable 'a tohle ne a ne jít...
'=========================================
'procházení tabulky a zobrazení(dat) nouzovka ListBox1
ListBox1.Items.Clear()
Dim row As DataRow
For Each row In DataTable.Rows
ListBox1.Items.Add(row.Item(0) & vbTab & row.Item(1) & vbTab & row.Item(2) & vbTab & row.Item(3))
Next row
End Sub
End Class
|