Yes, you can also use row.columns(1), row.columns(2) etc. (I think its a zero based array)..
You can also loop through the columns:
Dim allowAdd as Boolean = True
For Each row As DataGridViewRow in DataGridView1.Rows
For Each col As DataGridViewColumn in row.Columns
if col.value...