avevo già guardato la guida msdn...ma non ero ancora riuscito a venirne a capo...
cmq ero riuscito a farlo creando da codice sia l'intestazione della tabella che le varie righe in questo modo:
DataGridView1.AllowUserToAddRows = False
DataGridView1.AllowUserToDeleteRows = False
DataGridView1.ReadOnly = True
DataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells
Dim con As String = "stringa connessione"
Dim conec As New OleDbConnection(con)
conec.Open()
Dim StrSlc As String = "SELECT ID,Nome,Immagine FROM Tabella1 ORDER BY Nome"
'aggiungo le colonne
Dim column As DataGridViewColumn = New DataGridViewTextBoxColumn()
column.DataPropertyName = "ID"
column.Name = "ID"
column.Width = "20"
DataGridView1.Columns.Add(column)
Dim column2 As DataGridViewColumn = New DataGridViewTextBoxColumn()
column2.DataPropertyName = "Nome"
column2.Name = "Nome"
DataGridView1.Columns.Add(column2)
Dim column3 As DataGridViewColumn = New DataGridViewImageColumn()
column3.DataPropertyName = "Immagine"
column3.Name = "Immagine"
column3.Width = "100"
DataGridView1.Columns.Add(column3)
Dim Command As New OleDbCommand(StrSlc, conec)
'Dim Adapter As New OleDbDataAdapter(Command)
Dim Reader As OleDbDataReader
Reader = Command.ExecuteReader()
Dim dt As New DataTable()
dt.Load(Reader)
'Adapter.Fill(dt)
'DataGridView1.DataSource = dt
'While Reader.Read()
For i = 0 To dt.Rows.Count - 1
'aggiungo la riga
Dim Row As New DataGridViewRow
Dim Cell As DataGridViewCell
'aggiungo le celle
Cell = New DataGridViewTextBoxCell()
Cell.Value = dt.Rows(i).Item(0).ToString
Row.Cells.Add(Cell)
Cell = New DataGridViewTextBoxCell()
Cell.Value = dt.Rows(i).Item(1).ToString
Row.Cells.Add(Cell)
Cell = New DataGridViewImageCell()
Dim Image1 As Image = Image.FromFile("Immagini\" + dt.Rows(i).Item(2).ToString)
Cell.Value = Image1
Row.Cells.Add(Cell)
DataGridView1.Rows.Add(Row)
Next