0

当我创建一个空白的Xamarin.Forms应用程序时,没有加载WinPhone应用程序,为什么?

注意:
我正在 Windows 上尝试。

4

3 回答 3

0

我现在在空白 .Forms 应用程序中有 WinPhone 应用程序,还有通用 Windows 项目。

我为此做了什么:

在此页面中完成了 Sanjisan 回答中的所有事情

完全卸载 Xamarin,然后重新安装。这也发生在我身上。我也会卸载 Visual Studio。首先安装它,然后安装 Xamarin。

编辑:我知道这样做很糟糕,但这是 Xamarin 团队让我做的事情来解决它。据我所知,这是截至上周的官方修复。

于 2016-04-15T11:45:06.923 回答
0

如果你从 Xamarin Studio 创建它,你将只获得 Android 和 iOS 项目。你需要 Visual Studio 才能创建 WinPhone、Windows 和 UWP 项目。此外,您需要拥有相应的 SDK 才能加载和构建项目。

正如官方文档中所述,

为 Windows 平台开发 Xamarin.Forms 应用程序需要 Visual Studio。要求页面包含有关先决条件的更多信息。

于 2016-04-14T09:42:44.860 回答
0

您必须从 Visual Studio 中手动将其添加到您的多平台移动解决方案中,然后才能将Xamarin.Formsnuget 添加到其中。

完成步骤(点击链接):

添加 Windows Phone 应用程序

  • 右键单击解决方案 > 添加 > 新建项目...并添加一个空白应用程序 (Windows Phone)

在此处输入图像描述

右键单击新创建的项目 > 管理 NuGet 包...并添加 Xamarin.Forms 包。

右键单击项目 > 添加 > 引用并创建对共享 Xamarin.Forms 应用程序项目的项目引用。

编辑 App.xaml.cs 以在第 67 行附近的 OnLaunched 方法中包含 Init() 方法调用:

// add this line
Xamarin.Forms.Forms.Init (e); // requires LaunchActivatedEventArgs
// above this existing line
if (e.PreviousExecutionState == ApplicationExecutionState.Terminated) {}

编辑 MainPage.xaml - 更改根元素

<forms:WindowsPhonePage
...
   xmlns:forms="using:Xamarin.Forms.Platform.WinRT"
...
</forms:WindowsPhonePage>

编辑 MainPage.xaml.cs 以删除 : PhonePage 类名的继承说明符。

public sealed partial class MainPage  // REMOVE ": PhonePage"

仍在 MainPage.xaml.cs 中,在 MainPage 构造函数(大约第 28 行)中添加 LoadApplication 调用以启动 Xamarin.Forms 应用程序:

// below this existing line
this.InitializeComponent();
// add this line
LoadApplication(new YOUR_NAMESPACE.App());

双击 Package.appxmanifest 来设置这些经常需要的能力:

互联网(客户端和服务器)

  • 最后,从所需的现有平台项目中添加任何本地资源(例如图像文件)。
于 2016-04-14T09:43:47.660 回答