更改通用应用程序中默认页面的位置
Change the Location of DefaultPage in Universal App
如何更改 Universal Windows App
中默认 MainPage.xaml
的位置?我想在 Windows 和 WindowsPhone 项目中有一个名为 "View" 的子文件夹,我在其中保存 MainPage.xaml
文件,就像这个例子一样。
- Windows 项目
-- 查看
--- MainPage.xaml
- WindowsPhone 项目
-- 查看
--- MainPagePhone.xaml
- 共享文件
-- 型号
-- 视图模型
-- App.xaml
使用该结构,我在 App.xaml.cs
中遇到问题,无法找到 MainPage
。
if (!rootFrame.Navigate(typeof(MainPage), e.Arguments))
{
throw new Exception("Failed to create initial page");
}
首先,您不需要为文件指定不同的名称,phone 和 pc 项目都使用 MainPage,并将 MainPage.xaml 放在 view 文件夹中。
Universal App 会知道它在哪些平台上运行,并会相应地加载正确的页面。
您需要在两个项目中创建视图文件夹和 MainPage.xaml 文件。
删除 View 文件夹外的所有 MainPage.xaml 个文件。
然后导航至您的 App.xaml.cs 共享文件。
查看onLaunched
方法,你应该在方法的末尾找到类似这样的内容:
if (!rootFrame.Navigate(typeof(MainPage), e.Arguments))
{
throw new Exception("Failed to create initial page");
}
这是您的项目尝试加载页面的地方。 MainPage 应标记为错误,因为我们缺少引用。
因此,将此添加到 App.xaml.cs 页面的顶部:
using NameOfYourProjectHere.View;
如果有效请告诉我!
如果你想有不同的名字(mainWinPage / mainPhonePage)你必须告诉他取哪一个,每次你在 Shared-Project 中使用它时:
#include yournamespace.Views;
..
#if WINDOWS_APP
if (!rootFrame.Navigate(typeof(MainWinPage), e.Arguments))
...
#else // or #if WINDOWS_PHONE_APP
if (!rootFrame.Navigate(typeof(MainPhonePage), e.Arguments))
...
#endif
或者只使用相同的名称,这样更容易。
如何更改 Universal Windows App
中默认 MainPage.xaml
的位置?我想在 Windows 和 WindowsPhone 项目中有一个名为 "View" 的子文件夹,我在其中保存 MainPage.xaml
文件,就像这个例子一样。
- Windows 项目
-- 查看
--- MainPage.xaml
- WindowsPhone 项目
-- 查看
--- MainPagePhone.xaml
- 共享文件
-- 型号
-- 视图模型
-- App.xaml
使用该结构,我在 App.xaml.cs
中遇到问题,无法找到 MainPage
。
if (!rootFrame.Navigate(typeof(MainPage), e.Arguments))
{
throw new Exception("Failed to create initial page");
}
首先,您不需要为文件指定不同的名称,phone 和 pc 项目都使用 MainPage,并将 MainPage.xaml 放在 view 文件夹中。 Universal App 会知道它在哪些平台上运行,并会相应地加载正确的页面。 您需要在两个项目中创建视图文件夹和 MainPage.xaml 文件。 删除 View 文件夹外的所有 MainPage.xaml 个文件。
然后导航至您的 App.xaml.cs 共享文件。
查看onLaunched
方法,你应该在方法的末尾找到类似这样的内容:
if (!rootFrame.Navigate(typeof(MainPage), e.Arguments))
{
throw new Exception("Failed to create initial page");
}
这是您的项目尝试加载页面的地方。 MainPage 应标记为错误,因为我们缺少引用。
因此,将此添加到 App.xaml.cs 页面的顶部:
using NameOfYourProjectHere.View;
如果有效请告诉我!
如果你想有不同的名字(mainWinPage / mainPhonePage)你必须告诉他取哪一个,每次你在 Shared-Project 中使用它时:
#include yournamespace.Views;
..
#if WINDOWS_APP
if (!rootFrame.Navigate(typeof(MainWinPage), e.Arguments))
...
#else // or #if WINDOWS_PHONE_APP
if (!rootFrame.Navigate(typeof(MainPhonePage), e.Arguments))
...
#endif
或者只使用相同的名称,这样更容易。