silverlight2.0 页面跳转

来源:互联网 发布:搅拌站软件 编辑:程序博客网 时间:2024/06/14 01:52

我新建了一个项目,里面有已经有一个页面(Page)了,如果需要跳转到另一页面,就需要在项目上点右键,找到 "Add Silverlight Link "

sl跳转 

然后就会弹出下面的窗口

sl弹出窗口

如果要再加入一个页面就点击下面的单选按钮.
这时候会新建一个用户控件出来.

如果要第一个页面跳转到第二个页面,只需要在第一个页面加入如下代码:
 HtmlWindow html = HtmlPage.Window;
html.Navigate(new Uri("http://localhost:4535/sildemo_Web/otherTestPage.aspx"));

将第二个页面的url指定进来! (http://localhost:4535/sildemo_Web/otherTestPage.aspx)

 以下为个人理解:

当时我也没想明白为什么要这么做,后来仔细看了一下代码,
public partial class Page : UserControl{

…….

}

代码里面是我们的sl是继承自UserControl,而不是继承自Page或者Canvas.

那么从逻辑上来讲,它既然是派aspx页面下的一个控件,那么它就会理由去负责页面的导航问题,因为它至少应该属于Frame(框架)级别的类或者是当前浏览器的Page(页面)级的类,而这里它只是一个控件,因此,它进行跳转需要能过别的类来完成这样的工作.

这样我们就可以很好理解为什么没看到我们的(Page : UserControl),page对象没有包含跳转.或者导航这样的方法.

html.Navigate(new Uri("otherTestPage.aspx",UriKind.Relative));
这样,就可以使用相对路径了

原创粉丝点击