更改Windows Phone 8.1应用程序的默认启动页面

joy*_*ym8 9 c# wpf xaml visual-studio-2013 windows-phone-8.1

我在通用应用程序解决方案的Windows Phone 8.1项目中创建了一个名为PivotPage.xaml的新基本页面.当我在共享分区下转到App.xaml时,我想将下面代码中的HubPage更改为新创建的PivotPage.但VS拒绝承认PivotPage合法类型.两个页面的命名空间和类定义完全相同.

if (!rootFrame.Navigate(typeof(HubPage), e.Arguments))
{
    throw new Exception("Failed to create initial page");
}
Run Code Online (Sandbox Code Playgroud)

如果还有其他方法可以更改默认页面,请告诉我.

Chu*_*are 12

试试这个

WP 8.1通用项目

- >添加新项 - >空白页
- >将其命名为MyPivotPage.xaml


MyPivotPage.xaml

<Page
    x:Class="YOUR_NAMESPACE.MyPivotPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:YOUR_NAMESPACE"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d"
    Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">

    <Grid>
        <Pivot Title="MY APPLICATION">
            <!--Pivot item one-->
            <PivotItem Header="item1">
                <Grid/>
            </PivotItem>

            <!--Pivot item two-->
            <PivotItem Header="item2">
                <Grid/>
            </PivotItem>
        </Pivot>
    </Grid>
</Page>
Run Code Online (Sandbox Code Playgroud)

将"YOUR_NAMESPACE"更改为您的命名空间:)

然后在App.xaml.cs中

#if WINDOWS_PHONE_APP
if (!rootFrame.Navigate(typeof(MyPivotPage), e.Arguments))
{
    throw new Exception("Failed to create initial page");
}
#endif
#if WINDOWS_APP
if (!rootFrame.Navigate(typeof(MainPage), e.Arguments))
{
    throw new Exception("Failed to create initial page");
}       
#endif
Run Code Online (Sandbox Code Playgroud)

清理解决方案
将WP 8.1 Universal设置为默认启动项目
部署到您的设备

  • 啊,我想我知道你做错了什么.做构建 - >清洁解决方案.右键单击WP8.1项目 - >将其设置为启动项目.右键单击WP8.1 Project - > Build.不要做"构建解决方案",只需构建该特定项目然后进行部署.这是因为其他项目也没有PivotPage,所以要么将一个添加到另一个项目或使用一些#define.我将修改我的解决方案,向您展示我在说什么. (2认同)