当我创建一个空白的Xamarin.Forms应用程序时,没有加载WinPhone应用程序,为什么?
注意:
我正在 Windows 上尝试。
当我创建一个空白的Xamarin.Forms应用程序时,没有加载WinPhone应用程序,为什么?
注意:
我正在 Windows 上尝试。
我现在在空白 .Forms 应用程序中有 WinPhone 应用程序,还有通用 Windows 项目。
我为此做了什么:
完全卸载 Xamarin,然后重新安装。这也发生在我身上。我也会卸载 Visual Studio。首先安装它,然后安装 Xamarin。
编辑:我知道这样做很糟糕,但这是 Xamarin 团队让我做的事情来解决它。据我所知,这是截至上周的官方修复。
如果你从 Xamarin Studio 创建它,你将只获得 Android 和 iOS 项目。你需要 Visual Studio 才能创建 WinPhone、Windows 和 UWP 项目。此外,您需要拥有相应的 SDK 才能加载和构建项目。
正如官方文档中所述,
为 Windows 平台开发 Xamarin.Forms 应用程序需要 Visual Studio。要求页面包含有关先决条件的更多信息。
您必须从 Visual Studio 中手动将其添加到您的多平台移动解决方案中,然后才能将Xamarin.Forms
nuget 添加到其中。
右键单击新创建的项目 > 管理 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 来设置这些经常需要的能力:
互联网(客户端和服务器)