Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WP7和silverlight类似的导航流程_Silverlight_Windows Phone 7_Mvvm - Fatal编程技术网

WP7和silverlight类似的导航流程

WP7和silverlight类似的导航流程,silverlight,windows-phone-7,mvvm,Silverlight,Windows Phone 7,Mvvm,我正在开发由两页组成的应用程序。第一页是一个菜单,您可以在其中导航到第二页,这是某种地图。此应用程序假定在Windows Phone 7和Silverligth 4上运行。一切都建立在MVVM模式上。对于S4,我使用Unity,对于WP7,我创建的是非常简单的IoC容器 为了弄清问题的真相,我需要为这个应用程序提供一个通用的导航系统。我知道S4支持VigationContentLoader的新接口,它允许我们使用自己的内容加载器。不幸的是,这不适用于WP7。 我还考虑利用Shell/Frame方

我正在开发由两页组成的应用程序。第一页是一个菜单,您可以在其中导航到第二页,这是某种地图。此应用程序假定在Windows Phone 7和Silverligth 4上运行。一切都建立在MVVM模式上。对于S4,我使用Unity,对于WP7,我创建的是非常简单的IoC容器

为了弄清问题的真相,我需要为这个应用程序提供一个通用的导航系统。我知道S4支持VigationContentLoader的新接口,它允许我们使用自己的内容加载器。不幸的是,这不适用于WP7。 我还考虑利用Shell/Frame方法。基本上,我们有一个shell或框架控件,其中包含可替换的内容。本例中的导航是关于替换内容的。但是我担心这个解决方案对于WP7不能正常工作,因为后退按钮将关闭应用程序,而不是返回到上一页。 伙计们,你们还有别的想法吗?你有什么解决办法?我想强调的是,这个解决方案应该与MVVM保持一致。
向Jarek致以最诚挚的问候对于这样一个简单的小应用程序,我将创建自己的包装器,根据平台选择导航模式。 比如:

void MyNavigate(uri page)
{
#IFDEF WINDOWS_PHONE
    NavigationService.Navigate(page);
#ELSEIF
    NavigateTo(page); // or whatever is appropriate to your Silverlight 4 app
#ENDIF
}

您好,谢谢,但这是从视图运行的。我需要遵循MVVM指导原则的解决方案。@Jarek您目前的导航情况如何?不,我没有使用任何特定的MVVM框架。我有一个RelayCommand和ViewModel抽象类,INotifyPropertyChanged。就是这样。因为我刚刚开始使用WP7、Silverlight和MVVM,所以我创建了一个演示应用程序,它没有遵循MVVM的指导原则。现在,我正在尝试将应用程序完全移动到MVVM下。到目前为止,导航已经完成,类似于上面所说的。好的,我将试着用另一种方式问这个问题。如何在遵循MVVM模式的WP7中进行导航。因此,我不需要直接从视图导航,而是从viewmodel导航。有什么提示吗?谢谢