No sistema que estou desenvolvendo para o TCC, possui uma tela para listar os clientes ativos num datagridview conforme abaixo:

Para abrir o formulário de visualização e ou alteração de um cliente basta selecioná-lo (conforme imagem a seguir) :

Após visualizar e ou alterar os dados do cliente, ao voltar para a tela de listagem de cliente, a linha do cliente escolhido deverá voltar selecionado como abaixo:

Porém o cursor está na primeira linha do datagridview....
Vamos resolver isso ?! (listagem 1)
datagridview.celulacorrente = datagridview.linhas[linhaselecionada].celulas[0];
dgvClientes.CurrentCell = dgvClientes.Rows[i].Cells[0];
Listagem 1 - Código.
Agora o cursor fica na linha que está selecionada:

Espero que isso tenha ajudado...
Até a próxima...