Originariamente inviato da ddies
1) si puo' fare tutto questo con un "DataGrid" usando un "DataSet" ???

SI si può

2) si puo' poi al click (o alla selezione) su una riga estrarre il primo campo dove si trova l'ID ???

si quando clicchi devi gestire l'evento _CLick() e quindi
le proprietà .Row e .Col sono già setttate
ID=DataGrid1.text

3) si puo fare la prima colonna con "Width=0" ???
No non si può, comunque non esiste solo la DataGrid anche le altre grid hanno il dataset e hanno molte più libertà di manipolazione.

Ciao.
Io arrivo fino a qui', oltre non so cosa fare.........

popolo DataGrid:
codice:
        Dim DataAdapter As New OleDbDataAdapter()
        Dim DataSet As DataSet = New DataSet()
        Conn.Open()
        DataAdapter.SelectCommand = New OleDbCommand()
        DataAdapter.SelectCommand.Connection = Conn
        DataAdapter.SelectCommand.CommandText = "SELECT * FROM authors"
        DataAdapter.SelectCommand.CommandType = CommandType.Text
        DataAdapter.SelectCommand.ExecuteNonQuery()
        DataAdapter.Fill(DataSet, "authors")
        Conn.Close()
        DataAdapter = Nothing
        Conn = Nothing
        dg1.DataSource = DataSet
        dg1.DataMember = "authors"
estraggo la riga cliccata:
codice:
    Private Sub dg1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles dg1.MouseUp
        Dim pt = New Point(e.X, e.Y)
        Dim hti As DataGrid.HitTestInfo = dg1.HitTest(pt)
        If hti.Type = DataGrid.HitTestType.Cell Then
            dg1.CurrentCell = New DataGridCell(hti.Row, hti.Column)
            dg1.Select(hti.Row)
            MsgBox(hti.Row)
        End If
    End Sub
ma cosi mi ritorna solo la riga che ho cliccato, mentre io vorei estrarre ad esempio il campo Nome oppure l'ID, oppure il Cognome, come posso fare questo???