Я думаю, что первые два соображения могут сводиться к предпочтению. Я предпочел бы, чтобы первая строка была выбрана, и ее детали отображались при первом открытии окна - это говорит мне, как пользователю, как работает это окно. Не уверен, как это работает в WPF, но в Windows Forms, datagridview предварительно выбрал верхнюю строку по умолчанию (и чтобы прекратить это делать, требуется хитрость).
Когда я удаляю строку, я лично предпочитаю переходить в состояние «нет выбранной строки», но у меня нет особых оснований для этого в терминах «вот почему вы должны это сделать». Мне просто нравится видеть пустое «подробное» представление и отсутствие выделения в качестве подтверждения того, что я успешно удалил выбранную строку.
Последний пункт, однако, мне кажется более четким. Если у вас есть отношение мастер / деталь в представлениях, вы не должны разрешать множественный выбор. Если вам нужно, чтобы пользователь мог выполнять действия с несколькими строками основного вида сетки, вы можете добавить несколько флажков к строкам, чтобы позволить пользователю выбрать подмножество строк для действия. Но для целей отображения деталей за раз должна быть выбрана только одна строка.