UWP导航到PivotPage

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UWP导航到PivotPage相关的知识,希望对你有一定的参考价值。

我正在尝试导航到UWP应用中的特定页面。我使用了Windows Template Studio并创建了5个页面作为Pivot Control的一部分。

如果是首次使用该程序,我想导航到“设置”页面。我的逻辑可以识别第一次使用,但我无法弄清楚如何导航到正确的页面。

这是我的PivotPage xaml:

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <Pivot x:Uid="PivotPage">
        <PivotItem x:Uid="PivotItem_Main">
            <Frame>
                <views:MainPage/>
            </Frame>
        </PivotItem>
        <PivotItem x:Uid="PivotItem_Patient">
            <Frame>
                <views:PatientPage/>
            </Frame>
        </PivotItem>
        <PivotItem x:Uid="PivotItem_Templates">
            <Frame>
                <views:TemplatesPage/>
            </Frame>
        </PivotItem>
        <PivotItem x:Uid="PivotItem_PracticeInfo">
            <Frame>
                <views:PracticeInfoPage/>
            </Frame>
        </PivotItem>
        <PivotItem x:Uid="PivotItem_Settings">
            <Frame>
                <views:SettingsPage/>
            </Frame>
        </PivotItem>
    </Pivot>
</Grid>

在我的代码背后:

 if (isFirstTime)
        {
           // this.Frame.Navigate(SettingsPage);

            NavigationService.Navigate(new Uri("/PivotPage.xaml?item=4", UriKind.RelativeOrAbsolute));
        }

我得到的错误是:参数1:无法从'System.Uri'转换为'System.Type'

答案

在PivotPage.xaml中为Name控件和Pivot设置PivotItem,显示SettingsPage

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <Pivot Name="MainPivot" x:Uid="PivotPage">
        ...
        <PivotItem Name="SettingsPivotItem" x:Uid="PivotItem_Settings">
            ...
        </PivotItem>
    </Pivot>
</Grid>

使用代码隐藏中的控件名称使您的PivotItem成为选定的:

if (isFirstTime)
    MainPivot.SelectedItem = SettingsPivotItem;

以上是关于UWP导航到PivotPage的主要内容,如果未能解决你的问题,请参考以下文章

使用导航从一个片段导航到另一个片段后,防止后按工作

如何导航到 UWP 中的参数化构造函数? [复制]

使用 NavController 从片段导航到另一个片段

导航抽屉活动:在按钮单击时从片段移动到片段

在 UWP 中一段时间​​后自动导航到新页面

如何从一个片段导航到另一个片段?