博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Windows Phone 页面切换

Posted on 2011-11-09 22:40  脚印  阅读(867)  评论(0编辑  收藏  举报

最近做一个webbrowser的项目,经常需要在含有webbrowser控件的页面中弹出一些其他页面,不如弹出一个含有google 地图的层.

 

因为这个webborowser里面的内容我们无法保存(dom结构能保存,bom结构就没办法了),所以又不能导航到含有google地图的页面中, 

 

以前我总是把需要弹出的这个层做成一个Usercontrol然后添加到root控件中,把原本的内容用一个panle装起来,并且将Visibility设置成 System.Windows.Visibility.Collapsed。

 

今天突发奇想,每个应用程序都有唯一的一个PhoneApplicationFrame

 

页面只不过是他的content,我们是不是只需要更换PhoneApplicationFrame  的content属性就好了呢,于是做了以下测试:

 

 Global.Page =this; //用一个全局的变量保存需要返回的页面             

 ((PhoneApplicationFrame)Application.Current.RootVisual).Content = new Page1();//新页面

 

 在Page1中 调用下面的这行代码就能回来

 ((PhoneApplicationFrame)Application.Current.RootVisual).Content =  Global.Page;  

 

 不知道大家是否还有更好的方法? 请赐教。