In VB I use a little subroutine I call for each dgv where I want the columns to be unsortable:
Public Sub subNo_Sort_DGV_Columns(dgv As DataGridView)
For intColumn_Count As Integer = 1 To dgv.Columns.Count - 1
dgv.Columns(intColumn_Count).SortMode = _ DataGridViewColumnSortMode.NotSortable
Next
End Sub