Ahi te va te lo explico mas detalladamente.
Evento "CellValueChanged" de DataGridView, suponiendo que se llame DataGridView1
Código VB.NET:
Ver originalPrivate Sub dataGridView1_CellValueChanged(ByVal sender As Object, ByVal e As DataGridViewCellEventArgs) Handles DataGridView1.CellValueChanged
'Vaz a Validar que la celda que modificas el valor o indice sea la de tu combobox
'Si la columna es la de nombre "Tu Columna"
If DataGridView1.Columns(e.ColumnIndex).Name = "Tu Columna" Then
'Entonces tomas el valor de la celda y haces un "SELECT" a tu BD para traer los demas datos del Articulo o Producto
'Asignas a una variable tu resultado
Dim combo As DataGridViewComboBoxCell = TryCast(DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex), DataGridViewComboBoxCell)
'La variable combo tiene el resultado o valor de la celda, que en este caso seria la de tu combobox
'Puedes convertir el valor a Integer o tipo que creas necesario.
'Ejemplo lo convertiremos a Integer.
Dim valorinteger As Integer = Convert.ToInt32(combo.Value)
'Ahora haces la consulta a tu BD para jalar la informacion del articulo Seleccionado
Dim sqlstring AS String = "SELECT * FROM TuTabla WHERE id_art(este es tu campo en la tabla)= @id"
Dim cmd As New SqlCommand(sqlstring, TuConexion)
cmd.Parameters.AddWithValue("@id", valorinteger)
Dim reader as SqlDataReader = cmd.ExecuteReader()
'Checas si el Reader lleva Valores y los agregas al gridView
If reader.Read() Then
DataGridView.rows.add(Reader("Descripcion"), Reader("Precio"))
End If
end if
End Sub
Espero te quede un poco mas claro, este fragmento de codigo lo hice sin probarlo y a memoria por lo que puede traer algun error o me falto algun dato, pero la idea en general ahi esta plasmada, espero te sirva y puedas entender mas o menos lo que te quise decir desde la primera respuesta que te di...
Saludos....