ОШИБКА VisualStudios MainViewModel не существует

Привет, ребята, я устанавливал VS три раза и каждый раз одна и та же ошибка

Я установил MVVM Light в диспетчере NUGET для MVVM. После установки я установил DataContext в Main.Window на MainViewModel. Теперь это работает. Но в моем App.xaml невозможно получить словарь ресурсов. Во вложении скрины моей проблемы.

appxaml ( ‹= полноразмерное изображение)

введите здесь описание изображения

а также...

введите здесь описание изображения


person Botiblack    schedule 18.01.2017    source источник
comment
В каком именно пространстве имен определен ViewModelLocator? Готов поспорить на 100$, что он не определен в testapp.   -  person    schedule 18.01.2017
comment
Я не вижу, является ли это частью фреймворка MVVM Light, но если это так, ваше пространство имен взломано. См. stackoverflow.com/questions/17025601.   -  person    schedule 18.01.2017
comment
Вы переустанавливали Visual Studio 3 раза, чтобы исправить это? Разве это не похоже на покупку новой машины, чтобы попытаться заблудиться на автостраде?   -  person Bradley Uffner    schedule 19.01.2017
comment
Он определен в пространстве имен testapp.ViewModel.   -  person Botiblack    schedule 20.01.2017


Ответы (2)


Попробуйте объявить пространство имен 'vm' перед использованием, поместите его в тег приложения.

person Thowk    schedule 18.01.2017
comment
Я пробовал, но ничего не изменилось, та же ошибка - person Botiblack; 20.01.2017

Замените ‹vm: на ‹local: поскольку «локальное» пространство имен уже сопоставлено с корневым элементом в App.xaml:

<Application x:Class="testapp.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:local="clr-namespace:testapp.ViewModel"
             StartupUri="MainWindow.xaml">
    <Application.Resources>
        <local:ViewModelLocator x:Key="Locator" />
    </Application.Resources>
</Application>
person mm8    schedule 19.01.2017
comment
Попробуйте xmlns:local=clr-namespace:testapp.ViewModel, так как ViewModelLocator добавляется в папку ViewModel по умолчанию при установке MvvmLight с помощью NuGet. Я отредактировал свой ответ. - person mm8; 20.01.2017