Windows phone 8.1 Mapcontrol禁用旋转

时间:2015-09-18 16:08:52

标签: wpf xaml windows-phone-8.1 maps bing-maps

想知道是否有人可以帮忙解决这个问题。使用Visual Studio 2015开发Windows Phone 8.1应用程序并尝试禁用旋转。我目前使用标题更改事件“禁用”它并将标题重置为0.当前控件如下所示:

<Maps:MapControl Grid.Row="1"  Background="Black" Holding="MainMap_Holding" 
Heading="0" HeadingChanged="MainMap_HeadingChanged"
x:Name="MainMap" 
MapServiceToken="{StaticResource MapServiceTokenString}"
MapTapped="MainMap_MapTapped"
>

这种方法的问题是它导致地图只是跳回来看起来不是最好的。

我尝试使用'ManipulationMode',但即使设置ManipulationMode =“None”也没有任何作用,地图仍然正常运行。我认为这样做的“正确”方法是使用操作模式,如果它正在工作,但似乎不是。

任何阻止地图轮换的建议都会受到极大的欢迎。

2 个答案:

答案 0 :(得分:1)

是的,您可以禁用XAML本身的旋转。只需将以下属性添加到地图控件,并将其保持为禁用状态:

RotateInteractionMode="Disabled"

现在您的代码应如下所示:

<Maps:MapControl Grid.Row="1"
Background="Black"
Holding="MainMap_Holding" 
Heading="0"
HeadingChanged="MainMap_HeadingChanged"
RotateInteractionMode="Disabled"
x:Name="MainMap" 
MapServiceToken="{StaticResource MapServiceTokenString}"
MapTapped="MainMap_MapTapped"
>

答案 1 :(得分:1)

我相信在Windows 10地图控件中引入了RotateInteractiveMode选项,而不是WP8.1地图控件。对于WP8.1,您可以执行以下操作:

MyMap.HeadingChanged += (s, e) =>
{
    MyMap.Heading = 0;
};

根据您使用的地图控件的版本,可能存在IsRotateGestureEnabled属性。