页面和用户控件之间的通用应用程序差异,以及如何创建静态区域

Universal app difference between page and usercontrol, and how to create static regions

我昨天开始玩通用应用程序,很少有让我困惑的事情。在 WPF 中我们有 window 或用户控件,这些对我来说很清楚,但是在通用应用程序中也有一个页面和用户控件,我很困惑什么时候实际使用页面而不是用户控件(因为有些东西像 nivigation在 Prism 中查找不用于用户控件的页面)。我也找不到如何切换 usercontrols/pages,而无需浏览整个内容。所以假设我有一个页眉和一个页脚部分,我希望它们保持一致,因为不要改变。在 WPF 中,我使用棱镜来创建区域,并且我只在区域内导航,在通用应用程序中似乎没有办法做到这一点,或者有吗?我不想在所有 pages/usercontrols 等上重复相同的内容。请提供任何建议,我尝试在网上查看但没有太多关于实现这些内容的信息。

In WPF we have window or usercontrol, and these are clear to me, however in universal app there is a page and usercontrol as well

WPF XAML 框架和 UWP XAML 框架有一些不同的设计。

WPF:

public class Window : ContentControl, IWindowService

UWP:

public class Frame : ContentControl, IFrame, INavigate, IFrame2, IFrame3
public class Page : UserControl, IPage, IPageOverrides

帧对比Window

WPF 是一个 Windows 桌面应用程序,因此它使用 Window 作为根元素。 UWP 引入了内置的导航模型,页面在一个框架中,框架具有在页面之间导航的能力。

So let’s say I have a header and a footer section, I want them to be consistant as the dont change.

您可以将可导航的内容放在子框架中。

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <StackPanel>
        <TextBlock>Header</TextBlock>
        <Frame x:Name="pages">
            <TextBlock>Content</TextBlock>
        </Frame>
        <TextBlock>Footer</TextBlock>
    </StackPanel>
</Grid>