我正在开发Silverlight wp7应用程序。我不确定确切如何进行导航。
我有几个PhoneApplicationPage
类,其中包含几个UserControl
。看来我可以使用NavigationService
从PhoneApplicationPage
类进行导航,但不能从UserControl
类进行导航。比较可取吗?通用模式不是直接从UserControl
导航,而是从PhoneApplicationPage
处理吗?
目前,我有一部分内容收集的内容。每个部分在PivotItem
中都有自己的PivotControl
。每个部分的内容在ListBox
中。我将ListBox
包裹在UserControl
中,以提供更多功能/管理内容。但是,看来我无法直接从此类学习。
我可以删除包装器,然后直接将功能放在透视页面中。但是,如果我想在应用程序的其他位置重复内容列表怎么办?
另外,当NavigationService
由UserControl
构造时,我会将PhoneApplicationPage
传递给。
最佳答案
在WPF中,这很简单:您可以在NavigationService
上调用静态方法以获取答案:NavigationService.GetNavigationService(this)
。
不幸的是,这似乎在WP7中不可用。
取而代之的是,我想到了这个骇客……罪恶丑陋……希望有更好的东西。至少,可能您会想出一些更漂亮的东西。至少做一些空检查...
var service = ((Application.Current as App).RootFrame.Content as Page).NavigationService;