datagrid @WPF 'newitemplaceholderposition' não é permitido durante uma transação iniciada por 'addnew'

Eu tenho um tabControl. Em um dos tabitem, eu tenho um usercontrol que contém um datagrid que possui CanUserAddRows = "True". O usuário pode digitar dados na coluna e pressionar a tecla Enter para criar uma nova linha (suponho que o datagrid faça isso porque CanUserAddRows = "True"). O problema é que, quando digito os dados e altero as guias, recebo a exceção "WPF datagrid 'newitemplaceholderposition' não é permitido durante uma transação iniciada por 'Addnew'"

Alguma sugestão de como evitá-lo?

Tentei colocar dg.CommitEdit () em usercontrol.unloaded (). Não recebo a exceção, mas não recebo a nova linh

questionAnswers(4)

yourAnswerToTheQuestion