When all columns are readonly, the NewRowPosition is Bottom, a new row is added through the UI and the Tab key is pressed, an InvalidOperationException is thrown.
As a workaround, you can call the CommitEdit method inside a Dispatcher with a low priority in the AddingNewDataItem event:
private void Grid_AddingNewDataItem(object sender, Telerik.Windows.Controls.GridView.GridViewAddingNewEventArgs e)
{
Dispatcher.BeginInvoke(new Action(() =>
{
this.Grid.CommitEdit();
}), DispatcherPriority.ApplicationIdle);
}