Windows phone 8.1 地图控制禁用旋转
Windows phone 8.1 Mapcontrol disabling rotate
想知道是否有人可以提供帮助。使用 Visual Studio 2015 开发 Windows phone 8.1 应用程序并尝试禁用旋转。我目前 "disabled" 它使用标题更改事件并将标题重置回 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" 也完全没有任何效果,地图仍然正常运行。我认为 "proper" 方法可以使用操作模式,如果它有效的话,但它似乎不是。
任何停止地图旋转的建议都将非常受欢迎。
是的,您可以从 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"
>
我相信 RotateInteractiveMode 选项是在 Windows 10 地图控件而不是 WP8.1 地图控件中引入的。对于 WP8.1,您可以执行以下操作:
MyMap.HeadingChanged += (s, e) =>
{
MyMap.Heading = 0;
};
根据您使用的地图控件的版本,可能存在 IsRotateGestureEnabled 属性。
想知道是否有人可以提供帮助。使用 Visual Studio 2015 开发 Windows phone 8.1 应用程序并尝试禁用旋转。我目前 "disabled" 它使用标题更改事件并将标题重置回 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" 也完全没有任何效果,地图仍然正常运行。我认为 "proper" 方法可以使用操作模式,如果它有效的话,但它似乎不是。
任何停止地图旋转的建议都将非常受欢迎。
是的,您可以从 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"
>
我相信 RotateInteractiveMode 选项是在 Windows 10 地图控件而不是 WP8.1 地图控件中引入的。对于 WP8.1,您可以执行以下操作:
MyMap.HeadingChanged += (s, e) =>
{
MyMap.Heading = 0;
};
根据您使用的地图控件的版本,可能存在 IsRotateGestureEnabled 属性。