Salve a tutti...per la prima volta ho bisogno di utilizzare i database con VB.NET. Finora lavoravo con vb6. Ho cercato molto in rete ma la cosa non è semplicissima almeno di prima mano. In sostanza avrei bisogno di fare questo:
ho un database access che contiene 2 tabelle: STORE e MATERIAL
Da VB.NET ho nel mio form 2 datagrdiview.
All'avvio del form popolo il primo datagridview con il contenuto della tabella STORE tramie il seguente codice:
Public Class frmMain
Dim strConn As String = ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Progetti .NET\Progetti.NET\EasyStoreManager\Store.accdb")
Dim con As OleDb.OleDbConnection = New OleDb.OleDbConnection
Dim ds As DataSet
Dim da As OleDb.OleDbDataAdapter
Dim bs As BindingSource
Private Sub frmMain_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
con.ConnectionString = strConn
con.Open()
ds = New DataSet("dsSTORE")
da = New OleDb.OleDbDataAdapter("SELECT * FROM STORE", con)
da.Fill(ds, "Store")
da = New OleDb.OleDbDataAdapter("SELECT * FROM MATERIAL", con)
da.Fill(ds, "Material")
bs = New BindingSource()
bs.DataSource = ds
bs.DataMember = "STORE"
dgvStore.DataSource = bs
'dgvStore.DataMember = "STORE"
con.Close()
End Sub
End Class
In pratica, se ho almeno in parte capito il funzionamento di ADO.NET, creo un DataAdapter e da questo popolo il DataSet ds, eseguo la procedura 2 volte per inserire entrmbe le tabelle sul mio dataset. In seguito assegno il dataset ad un bindingsource e il bindingsource al mio primo DataGridView. Tutto sembra funzionare infatti la tabella si popola all'avvio dell'applicazione.
Ora quello che vorrei fare è: ogni volta che seleziono una riga (quindi faccio click sul DataGridView) il secondo DataGridView ,che chiameremo dgvMaterial, si deve andare a popolare con il contenuto della tabella Material, però solo dove il campo ID_STORE_MATERIAL (campo contenuto nella tabella material) è uguale al campo ID_STORE (campo contenuto nella tabella STORE, corrispondente al record selezionato sulla nostra prima DataGridView. Il mio DataSet già contiene entrambe le tabelle, ma non so come fare questa query di selezione e ad assegnare il risultato alla mia seconda DataGridView. Spero di eessermi spiegato. Please datemi una mano ;(