我正在开发一个在Windows 8.1和Windows Phone 8.1上运行的通用应用程序。
我遇到了App.xaml文件标题中提到的错误。 App.xaml文件位于MyApp.Shared项目中,ViewModel文件夹也是如此。 但是,该错误仅发生在Windows 8.1应用程序中。 Windows Phone应用程序运行正常,这是非常奇怪的,因为它们运行完全相同的代码。
在Windows 8.1应用程序中,我无法使用ViewModelLocator及其属性,因此无法为任何页面设置DataContext。 (绑定无法解决,只要我尝试使用ViewModelLocator定义的DataContext打开页面,应用就会崩溃。)
Bellow是我的App.xaml文件
<Application
x:Class="MyApp.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:MyApp">
<Application.Resources>
<ResourceDictionary >
<!-- This is where the error is -->
<vm:ViewModelLocator x:Key="Locator" xmlns:vm="using:MyApp.ViewModel" />
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/Resources/Colors.xaml"/>
<ResourceDictionary Source="/Resources/Styles.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
答案 0 :(得分:1)
在Windows 项目上单击鼠标右键后,检查 ViewModelLocator 和 ViewModel 类是否具有公共访问权限 - &GT; 清洁,最后构建。