0

我正在为 Windows Phone 7 制作课程时间表应用程序。我有两个时间表视图。一个完整的视图显示一周中的所有课程,另一个是日视图,其中根据星期几显示其内容。我如何根据用户在设置页面中的选择默认加载这些不同页面之一。我尝试在 MainPage 类构造函数中使用导航服务。

NavigateService.Navigate(new Uri("/Today.xaml",UriKind.Relative));
4

1 回答 1

1

“MainPage.xaml”的属性中,转到“事件”选项卡。找到“已加载”事件并双击它。您会发现自己在“MainPage.xaml.cs”中创建了一个方法:

private void MainPage_Loaded(object sender, RoutedEventArgs e)
{
     //Some code may already be written       
}

现在,根据您在设置页面中保存的状态,您可以在“MainPage_Loaded”方法中使用条件语句:

if(condition1)
{
    NavigateService.Navigate(new Uri("/Today.xaml",UriKind.Relative));
}
else if(condition2)
{
    // Navigate to a different Uri
}

这会将用户直接导航到下一页。

在那之后,我相信如果按下后退按钮而不是转到上一页,您会希望应用程序退出。为此,您必须将以下代码放入刚刚导航到的页面的“已加载”方法中:

while (NavigationService.BackStack.Any())
{
    NavigationService.RemoveBackEntry();
}

这将清除应用程序的 BackStack 并在按下后退按钮时允许应用程序退出。

于 2012-12-11T13:44:36.503 回答