页面和用户控件之间的通用应用程序差异,以及如何创建静态区域
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>
我昨天开始玩通用应用程序,很少有让我困惑的事情。在 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>