Si queres que el dbgrid mantenga "a la vista" los datos que ya tenia antes, y no quede vacio como al asignarle nil, podes usar otro datasource para el otro formulario, y simplemente "desactivar" el datasource del dbGrid mientras de realiza la edición/inserción.
DataSource1.Enabled := False;
Hasta luego.
