Просто предположение, но связано ли это с тем, что SelectionChanged является перенаправленным событием, которое просто переполняет внешнюю DataGrid?Если это так, просто проверьте параметр sender
, чтобы увидеть, к какой DataGrid относится событие, перед его обработкой.