this.NavigationService.Navigate(new Uri(page.xaml, UriKind.Relative));
每次我需要导航到应用程序中的不同页面时,我都厌倦了打字。
因此,我创建了一个BasePage
带有虚拟的自定义项,以帮助在我的应用程序中导航。
我遇到的问题是在 VS2010 中,如果我打开了源代码和设计视图,则该设计仅显示 windows phone 背景,并且我从 xaml 的顶部到底部得到一些蓝色的摆动线以及沿 x 线的消息不支持。这发生在我设置为从自定义 BasePage 继承的任何页面上。
但是,如果我在我的 Windows Phone 或 Emmulator 中运行该应用程序,它就会工作。
有没有人对我可以在应用我的自定义基础时尝试保持我的设计视图正常工作有什么建议,或者如果我错过了什么?
我的 BasePage 的一个略微精简的版本是:
public class BasePage : PhoneApplicationPage
{
public virtual void NavigateTo(string pageName, params Tuple<string,string>[] queryString)
{
// Code to perform this.NavigationService.Navigate
}
}
编辑 2011-08-16
此基本页面的一部分覆盖了PhoneApplicationPage
'OnNavigatedTo
方法,我在该方法中执行安全检查以查看是否:
- 已启用安全性
- 用户已登录
如果启用了安全性但用户没有登录,他们会立即被重定向到登录页面。
我发现这很有用,因为我不必向现有或新页面添加任何代码来处理这个问题,只要它们从BasePage
.