我正在使用Visual Studio Express 2012 for Windows Phone并构建一个针对Windows Phone 7.1的应用程序。navigationservice没有定义构造函数
我想使用NavigationService导航到不同的页面,但我一直遇到问题。
这里是我的代码:
private void GotoDetails(object _url)
{
var url = string.Format("/DetailsPage.xaml?url={0}", _url.ToString());
NavigationService nav = new NavigationService();
nav.Navigate(new Uri(url, UriKind.Relative));
}
当我尝试建立这个我得到一个“类型‘System.Windows.Navigation.NavigationService’没有定义的构造”上的NavigationService资产净值= ...线。
如果我试图做的只是NavigationService.Navigate(新的Uri(url,UriKind.Relative));那么我会得到一个“非静态字段,方法或属性'System.Windows.Navigation.NavigationService.Navigate(System.Uri)''错误需要对象引用。
更新:我想使用MVVM(第一次)。这段代码驻留在我的视图模型中。我没有使用任何框架。试图从头开始学习它。
我已经搜索了intertubes,但似乎无法找到解决方案。
任何帮助,非常感谢。
卡迈勒
我想要使用MVVM(第一次)。这段代码驻留在我的视图模型中。 – Kamal
是的导航是不是mvvm友好。我认为这是视图的一部分,所以我通常没有这个问题。但是你可以在视图模型中使用它(仍然不太漂亮): var root = App.RootVisual as PhoneApplicationFrame; root.Navigate(new Uri(“/ somepage.xaml”,UriKind.Relative)); – dotMorten
我还发现这篇文章有助于创建一个与MVVM一起使用的导航服务:http://www.windowsphonegeek.com/articles/MVVM-in-real-life-Windows-Phone-applications-Part2 – Kamal