When DataSource of DataGrid has no records (from beggining or after deleting them) it has no Binding: BindingContents has Position=0 and internal IsBinding=false.
This situation does't change after adding records to DataSourse. Running once more DataGrid.SetDataBinding does't help (but only creation of new Datasource - that is bad).
What to do?