问题1
我现在有我的必应地图设置,但我希望添加一个缩放按钮,在我按下一个搜索按钮,它把我的缩放水平17,我想知道我必须写两行代码,以添加或删除一个从缩放级别,每次点击按钮?
问题2
我也希望在我的应用程序中使用图钉--我可以在一个位置设置一个简单的图钉集,但是当一个新的位置被应用时,我想要它中心,并且保持在同一个位置,而不是当它与原来的中心点断开连接时。
发布于 2015-11-16 17:54:08
下面是一个简单的导航条,它提供了pan按钮和缩放滑块:
<Grid HorizontalAlignment="Left" VerticalAlignment="Top" Height="290">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30"/>
<ColumnDefinition Width="30"/>
<ColumnDefinition Width="30"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="30"/>
<RowDefinition Height="30"/>
<RowDefinition/>
</Grid.RowDefinitions>
<Button Content="⇑" Width="25" Height="25" Grid.Column="1" Tag="Up" Click="PanMap_Click"/>
<Button Content="⇒" Width="25" Height="25" Grid.Row="1" Grid.Column="2" Tag="Right" Click="PanMap_Click"/>
<Button Content="⇓" Width="25" Height="25" Grid.Row="2" Grid.Column="1" Tag="Down" Click="PanMap_Click"/>
<Button Content="⇐" Width="25" Height="25" Grid.Row="1" Tag="Left" Click="PanMap_Click"/>
<Slider Name="ZoomBar" Orientation="Vertical" Height="180" Width="20" Margin="10,10" Grid.ColumnSpan="3" Grid.Row="3"
HorizontalAlignment="Center" Minimum="1" Maximum="19" SmallChange="1"/>
</Grid> 对于缩放栏,我将它放在地图的中间属性上,如下所示:
<m:Map Name="MyMap" ZoomLevel="{Binding Value, ElementName=ZoomBar, Mode=TwoWay}"/>下面是摇摄的代码:
private void PanMap_Click(object sender, RoutedEventArgs e)
{
Button b = sender as Button;
Point p;
MyMap.TryLocationToViewportPoint(MyMap.Center, out p);
if (p != null)
{
switch (b.Tag as string)
{
case "Up":
p.Y -= 50;
break;
case "Down":
p.Y += 50;
break;
case "Left":
p.X -= 50;
break;
case "Right":
p.X += 50;
break;
}
Microsoft.Maps.MapControl.WPF.Location l;
MyMap.TryViewportPointToLocation(p, out l);
MyMap.SetView(l, MyMap.ZoomLevel);
}
}你说第二个问题是什么意思?如果您在地图中添加了一个图钉,它应该保持与您指定的坐标的连接,而不是地图的中心,当您将地图的中心作为一个不同的位置时。你只是想要在地图上放置一个当你平移时不会移动的控件吗?
https://stackoverflow.com/questions/33724380
复制相似问题