«Ресурс с именем {Locator} не найден» Ошибка при использовании пользовательского элемента управления mvvm-light
я использую легкий инструментарий mvvm для создания приложения WPF. Я создал пользовательский элемент управления и соответствующую ViewModel. Я создал свойство ViewModel в ViewModelLocator. Я связал пользовательский элемент управления datacontext со свойством в классе Locator. Когда я редактирую пользовательский элемент управления в Blend или VS Designer, кажется, что все работает, так как я могу видеть свои данные времени разработки.
Когда я теперь пытаюсь использовать свой пользовательский элемент управления в главном окне, которое создается шаблоном wpf инструментария, я получаю сообщение об ошибке «Ресурс с именем {Locator} не может быть найден» и строка с моим пользовательским элементом управления в главном окне. .xaml отмечен красной линией в Blend. В Visual Studio эта же строка помечена ошибкой: «Не удается создать экземпляр типа MyView».
Изменить: это исходный код app.xaml
<Application.Resources>
<!--Global View Model Locator-->
<vm:ViewModelLocator x:Key="Locator"
d:IsDataSource="True">
</Application.Resources>
Это код EditCustomerView.xaml
<UserControl.DataContext>
<Binding Path="EditCustomer" Source="{StaticResource Locator}" />
</UserControl.DataContext>
Это код в моем главном окне
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Skins/MainSkin.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Window.DataContext>
<Binding Path="Main" Source="{StaticResource Locator}"/>
</Window.DataContext>
<Grid x:Name="LayoutRoot" Background="{DynamicResource BasicBackground}">
<Grid.RowDefinitions>
<RowDefinition Height="0.927*"/>
<RowDefinition Height="0.073*"/>
</Grid.RowDefinitions>
<ListBox Margin="4" SelectedItem="{Binding Main.SelectedCustomer, Mode=Default, Source={StaticResource Locator}}" ItemTemplate="{DynamicResource CustomerTemplate}" ItemsSource="{Binding Customers, Mode=Default}"/>
<Button HorizontalAlignment="Center" VerticalAlignment="Center" Width="75" Content="Edit" Grid.Row="1" Command="{Binding EditCustomerCommand, Mode=Default}"/>
<Border x:Name="border" Opacity="0.75" Grid.RowSpan="2" Background="#FF706F6F" BorderBrush="Black" BorderThickness="1" Visibility="{Binding EditViewVisibility, Mode=Default}">
<views:EditCustomerView HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
</Grid>
Приложение компилируется и запускается. Ошибка возникает только во время разработки.
Можете ли вы сказать мне, что я делаю не так?
Заранее спасибо.