DG.CurrentCell = new DataGridCellInfo(DG.Items[0], DG.Columns[0]);
DG.UnselectAllCells();
DG.SelectedCells.Add(DG.CurrentCell);
DG.BeginEdit();
But I've a feeling the user would find it a bit disconcerting. The OnFocus only fires when they click on an actual cell and that may be the cell they actually want to edit? Also if there's a scrollbar and the user uses it then the OnFocus fires when they move back to the Grid