title: Filling a DataGridView from SQLReader
body: <p>Im a little stuck on some code that im writing</p>
  
  <p>An outline is that i am reading some data in from an SQL database and wantint to display it in a DataGridView on a form. I have confirmed that there is data being returned from the database but am unsure as to why this isnt appearing. I have followed a number of tutorials from the internet but so far non have worked</p>
  
  <p>here is my code</p>
  
  <pre><code>Private Sub PopulateGrid()
      Dim Con As New SqlClient.SqlConnection
      Dim strCon As String = CropTrackMod.strConn
      Dim strCommand As String = "select * from customer"
  
  
      Try
          Con.ConnectionString = strCon
          Dim Cm As New SqlClient.SqlCommand(strCommand, Con)
          Con.Open()
          Dim reader As SqlClient.SqlDataReader = Cm.ExecuteReader()
  
          'test to confirm data received
          reader.Read()
          MsgBox(reader.Item("ContactName"))
  
  
          DataGridView1.AutoGenerateColumns = True
          DataGridView1.DataSource = reader
          DataGridView1.Refresh()
  
  
  
      Catch ex As Exception
          MessageBox.Show(ex.Message, "Error")
  
      Finally
          If Con.State = ConnectionState.Open Then
              Con.Close()
          End If
      End Try
  
  End Sub
  </code></pre>
  
  <p>i have also tried to implement a datatable but receive a conversion error on the data type
  any help would be appreciated</p>
  
  <p>thanks guys</p>