Если вы используете элемент управления XAML или Window (что должно быть в случае, если вы используете MVVM), LayoutRoot (Grid по умолчанию) является общедоступным. В вашем примере вы используете просто простой класс для View, поэтому трудно сказать, что происходит.
Кроме того, я второе мнение Кэмерона - ни View, ни ModelView не должны заниматься назначением DataContext. Это можно сделать разными способами (DataTemplate, внедрение зависимостей, специальный класс компоновщика, простой код), но обычно это происходит на уровне приложения.