Torne a nova linha suja programaticamente e insira uma nova linha após ela no DataGridView
Eu tenho um datagridview editável e ilimitado. Estou alterando o valor da nova linha programaticamente.
Normalmente, quando o usuário digita em qualquer campo de uma nova linha, ele fica sujo e outra nova linha é inserida abaixo dele.
Mas no meu caso, quando o usuário entra em qualquer campo de uma nova linha, estou interceptando a tecla de função e alterando o valor da célula programaticamente.
myGrid.CurrentCell.Value = "xyz";
E não insere uma nova linha abaixo dela.
Agora, como solução alternativa, tentei isso no manipulador de eventos CellValueChanged.
if (myGrid.NewRowIndex == e.RowIndex)
{
myGrid.Rows.Insert(e.RowIndex + 1, 1);
}
Mas lança erro dizendoNo row can be inserted after the uncommitted new row.
.
Como eu poderia dizer ao myGrid que deixei a linha atual (que é uma nova) suja e que há necessidade de uma nova linha após ela?