如何在silverlight 4中打开项目页面?

时间:2010-09-21 19:49:50

标签: silverlight navigation

我的silverlight项目有两个页面:MainPage-default页面和SecondViewPage添加的Silverlight页面。 为了从一个导航到另一个,我已经覆盖了Application_Startup(...)

{
this.RootVisual = mainUI;
mainUI.Children.Add(new MainPage());
}

创建了一个

public static void GotoPage(UserControl nextPage)
        {
            App app = (App)Application.Current;
            app.mainUI.Children.Clear();
            //show next page
            app.mainUI.Children.Add(nextPage);
        }

然后打开SecondViewPage很简单:

App.GotoPage(new SecondViewPage());

但我真正想要的是在分隔浏览器窗口中打开第二个视图页面,因为删除childer并添加new会使导航完全在浏览器之外(“后退”按钮不保持prvious page链接)。

感谢您的建议。 V

2 个答案:

答案 0 :(得分:0)

您似乎没有使用Silverlight 4提供的任何导航功能。

我建议您尝试使用“业务应用程序”模板生成测试项目,并查看多页导航 的工作方式。它完全支持浏览器的前后移动,可以为您节省大量的工作。

答案 1 :(得分:0)

这正是导航框架旨在解决的问题。

我建议你清理半小时,然后在第9频道观看Silverlight TV Video

修改

如果您必须启动一个单独的窗口,导航框架仍然有用,但您可以使用标准窗口导航。像这样: -

HtmlPage.Window.Navigate(new Uri("ThisHostPage.aspx#SecondView" UriKind.Relative), "_blank");