如何从Windows Phone 8.1中的用户控件导航到另一个页面

Wiz*_*ard 5 c# windows-phone-8.1

我已经搜索过这个,但是找不到与Windows Phone 8.1环境直接相关的任何内容,请告诉我是否有可用的链接,因为我认为这将是一个常见问题.

当我点击列表中的项目时,我试图从UserControl中导航到另一个页面,但是,我很难获得父页面的框架,所以我可以导航.

基本上,我试图在用户控件中执行此操作.

 private void lstFoo_ItemClick(object sender, ItemClickEventArgs e)
    {
        Page parentPage = this.Parent as Page; //Returns null

        if (parentPage != null)
        {
            parentPage.Frame.Navigate(typeof(BarPage), e.ClickedItem);
        }
    }
Run Code Online (Sandbox Code Playgroud)

用户控件将在多个页面上使用,并且所有页面都具有相同的结果,但是我无法弄清楚如何使Navigate工作然后传递参数.任何帮助,将不胜感激..

谢谢.

Rom*_*asz 6

如果您使用标准WP模板,并将一个Frame设置为Window的内容,那么应该可以这样做:

private void lstFoo_ItemClick(object sender, ItemClickEventArgs e)
{
    (Window.Current.Content as Frame).Navigate(typeof(BarPage), e.ClickedItem);
}
Run Code Online (Sandbox Code Playgroud)

只有通过传递此参数才会注意 - 如果它不可序列化,那么当您的应用程序将被暂停时,SuspensionManager将抛出异常.