我正在将我的WP 8.1应用程序转换为UWP,因此我对使用prism感兴趣,我想从头开始构建我的应用程序。我创建了一个页面,并在其中放置了一个按钮来导航到另一个页面,部署应用程序并进行了尝试。当我单击按钮以导航时,执行以下代码:
private void Button1_Click(object sender, RoutedEventArgs e)
{
this.Frame.Navigate(typeof(TestPage));
}
应用程序崩溃。在VS2015的输出窗口中,我看到底部显示如下内容:
The program '[4760] MyApp.exe' has exited with code -1073741819 (0xc0000005) 'Access violation'.
两个页面都有ViewModels,并使用Prisms ViewModelLocator.AutoWireViewModel
进行设置。我尝试清除ViewModels的所有属性,使它们为空且没有代码,但什么也没做到。在ViewModel构造函数中设置断点并在调试时到达此点。
有任何想法是什么意思或者还有哪里可以查找?
更新: 问题似乎是由控件模板引起的。我通过注释所有XAML然后逐一添加回来的方式将问题缩小到了一个按钮控件上。然后我发现控件引起了问题,因此我删除了绑定和样式模板。重新添加绑定,一切正常,再次添加模板,问题就出现了。