Wpf 如何使用WP8.1在每页底部显示一个小框架?

Wpf 如何使用WP8.1在每页底部显示一个小框架?,wpf,windows-phone-8.1,Wpf,Windows Phone 8.1,我希望在命令栏上方的屏幕底部有一个小框架,或者在屏幕顶部有一个小框架,无论我显示的是哪个屏幕 这个想法是要有一个小空间,在那里我可以显示用户开始的某些操作的进度,或者连接是否丢失,等等 实际上,用户可以在多个屏幕上导航,并选择一些要下载或上载的内容,我希望始终显示进度,而不是使用对话框来干扰页面导航 我想要避免的是为每个页面编写一些代码 有什么建议吗?实现这一点的一种方法是使用母版页概念,其中母版页包含您希望始终显示的元素,以及承载每个单独页面的框架 创建一个名为MasterPage的新页面,X

我希望在命令栏上方的屏幕底部有一个小框架,或者在屏幕顶部有一个小框架,无论我显示的是哪个屏幕

这个想法是要有一个小空间,在那里我可以显示用户开始的某些操作的进度,或者连接是否丢失,等等

实际上,用户可以在多个屏幕上导航,并选择一些要下载或上载的内容,我希望始终显示进度,而不是使用对话框来干扰页面导航

我想要避免的是为每个页面编写一些代码


有什么建议吗?

实现这一点的一种方法是使用母版页概念,其中母版页包含您希望始终显示的元素,以及承载每个单独页面的框架

创建一个名为MasterPage的新页面,XAML将如下所示:

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
        <RowDefinition Height="Auto"/>
    </Grid.RowDefinitions>

    <Frame x:Name="contentFrame" Grid.Row="0"/>

    <TextBlock Text="TextBlock that is displayed all the time" Grid.Row="1"/>
</Grid>
在应用程序的OnLaunched()方法中,创建母版页实例而不是框架,并将其作为窗口内容:

var rootMasterPage = Window.Current.Content as MasterPage; // MasterPage instead of a Frame

if (rootMasterPage == null)
{
    rootMasterPage = new MasterPage(); // MasterPage instead of a Frame
    Window.Current.Content = rootMasterPage 
}
然后,使用母版页的内部框架导航到应用程序的第一页

if (rootMasterPage.ContentFrame.Content == null)
{
    rootMasterPage.ContentFrame.Navigate(typeof(MainPage));
}
每当您需要导航到其他页面时:

(Window.Current.Content as MasterPage).ContentFrame.Navigate(typeof(SecondPage));

使用底部框架的逻辑创建一个usercontrol,然后将其放在每个页面上
(Window.Current.Content as MasterPage).ContentFrame.Navigate(typeof(SecondPage));