title: How to reference a DataGridViewCell by column name in a DataGridViewRow?
body: <p>I'm populating a <code>DataGridView</code> as shown in the code below. However while each created row is associated with the parent <code>DataGridView</code>, in which the columns are created, I cannot reference cells in the row by column name. </p>
  
  <p>Is there a way for me to reference by column name? I would rather avoid using the integer based index.</p>
  
  <p><strong>EDIT</strong>: note that the columns of the DataGridView has been created and correctly named using the Visual Studio designer.</p>
  
  <pre><code>Private Sub SetServiceOrders()
      Dim Row As DataGridViewRow = Nothing
      Dim RowValues As IServiceOrderDataGridViewRowValues = Nothing
  
      Me.ServiceOrdersDataGridView.Rows.Clear()
      If Not _ServiceOrders Is Nothing AndAlso _ServiceOrders.Count &gt; 0 Then
          For Each ServiceOrder As ServiceOrder In _ServiceOrders.Values
              RowValues = ServiceOrder
              Row = New DataGridViewRow()
              Me.ServiceOrdersDataGridView.Rows.Add(Row)
              With Row
                  'This Fails: "Specified argument was out of the range of valid values."
                  .Cells("StatusImageColumn").Value = My.Resources.BulletGreen24
                  .Cells("OrderDateColumn").Value = RowValues.Created
                  .Cells("CreatedByColumn").Value = RowValues.OwnerName
              End With
              Me.ServiceOrdersDataGridView.Rows.Add()
          Next
      End If
  End Sub
  </code></pre>