.net WP8.1/Win10 UWP:在 Visual Studio Designer 中找不到 MapControl 的命名空间

.net WP8.1/Win10 UWP: Namespace for MapControl not found in Visual Studio Designer

编辑:在使用 MapControl 时,Win 10 UWP 应用程序(VS2015、Win10)中也会出现下面描述的问题。

我在 Windows Phone 8.1(通用应用程序)应用程序中使用 MapControl 时遇到一个奇怪的问题。将控件添加到页面后,Visual Studio 说 The name "MapControl" does not exist in the namespace "using:Windows.UI.Xaml.Controls.Maps". 构建应用程序有效,我可以将其部署到 phone 并显示地图,一切正常 - 但我无法使用此页面的设计器不再存在,因为它声称该错误。

问题发生在一个更大的项目中,该项目最初是在 Windows 8.1 上的 VS2013(更新 4)中启动的。我的第一个想法是我的 VS 安装有点坏了。但是在全新安装 Windows 10 (10240) 和 VS2015 RTM 之后,问题也出现了。我的复现步骤很简单:

这里有什么问题?我怎样才能让 Visual Studio 设计器再次使用带有 MapControl 的页面?首先,我想到了 VS2013 中的一个错误 - 但它很容易重现,没有在 VS2015 中修复并且在互联网上没有关于它的信息?我做错了什么?

将配置设置为 x86 而不是 "Any CPU"。在 https://connect.microsoft.com/VisualStudio/feedback/details/1659249/visual-studio-2015-rtm-uwp-the-name-mapcontrol-does-not-exist-in-the-namespace-using-windows-ui-xaml-controls-maps

优先修复投票

制作正确的地图库参考

xmlns:Maps="clr-namespace:Microsoft.Phone.Maps.Controls;assembly=Microsoft.Phone.Maps"

而不是

xmlns:Maps="using:Microsoft.Phone.Maps.Controls;assembly=Microsoft.Phone.Maps"

Visual Studio Tools for Universal Windows Apps 1.0 存在错误导致地图出现此问题,安装此更新应该可以解决问题 Update

Procedure to correctly use the map sdk

Windows 8.1

  1. 转到工具 -> 扩展和更新 -> 安装 Bing Map SDK。
  2. 右击项目->添加引用->Windows->扩展->Bing地图
  3. 将配置设置为 x86(配置属性 -> 配置)
  4. 使用 xmlns:maps="using:Bing.Maps"
  5. 将地图引用添加到您的页面
  6. 将此行添加到您的 xaml <maps:Map />

现在你可以开始了

Windows Phone and Windows 10 UAP

在您的 xaml

中添加此参考
xmlns:maps="using:Windows.UI.Xaml.Controls.Maps"

然后将此行添加到您的 xaml

<maps:MapControl />