I've found this post really helpfull, but I'm having some problems. It seems that if the selected cell isn't visible (by which I mean that the columns are scrolled out of the visible part of the grid), the row of the selected cell isn't found. The row is null.
var row = grid.ItemContainerGenerator.ContainerFromItem(selectedCell.Item)
I suppose this has something to do with the virtualization of the grid.
Is there a way to get the row, even when the cell is outside the visible part?