我正在开发一个Windows 8应用程序项目.我正在使用Visual Studio 2012和它的预定义模板(GroupedPage,SplitPage,ItemsPage).
这时我需要添加一个App栏.我选择的方式是创建一个并在所有页面上显示它.我读这篇文章:http://msdn.microsoft.com/en-us/library/windows/apps/xaml/jj150604.aspx
要在我的项目中包含它,我将全局页面设置为App.xaml上的起始页面
protected async override void OnLaunched(LaunchActivatedEventArgs args)
...
if (!rootFrame.Navigate(typeof(GlobalPage), args.Arguments))
throw new Exception("Failed to create initial page");
...
Run Code Online (Sandbox Code Playgroud)
在Global页面上,我正在更改OnLaunched方法,以便进入真正的主页面:
rootPage = e.Parameter as Page;
frame1.Navigate(typeof(MainPage), this);
Run Code Online (Sandbox Code Playgroud)
我为按钮添加了事件订阅,例如
private void ButtonBlogList_Click(object sender, RoutedEventArgs e)
{
this.Frame.Navigate(typeof(BlogListManagement), this);
}
Run Code Online (Sandbox Code Playgroud)
启动应用程序后,将显示应用程序栏,我可以使用内部的应用程序按钮进行导航,但在第一次导航后,AppBar不会显示在目标页面上.
知道我的错误吗?
谢谢你的帮助.
您好,
我正在使用xaml和c#在一个简单的Windows 8应用程序中工作.我正在使用VS 2012模板创建页面,包括导航系统.
我正在加载大量数据,因此我决定添加一个带有ProgressRing的加载页面,并在加载数据完成后导航到第一个Application页面:
//loading page
protected async override void OnNavigatedTo(NavigationEventArgs e)
{
...
await topCookerManager.GetBlogsAsync();
this.Frame.Navigate(typeof(MainPage));
...
}
它在应用程序启动时运行良好,但是当我在应用程序的第一页时,当我点击后退按钮时,我将重定向到加载页面.因此,在加载页面中我正在检查数据是否已加载,如果是,则重定向到第一页.
if (dataManager.Blogs != null && dataManager.Blogs.Count > 0)
this.Frame.Navigate(typeof(MainPage));
你能告诉我我的错误在哪里吗?或者如何实现加载页面.
谢谢你的帮助.