0

我正在创建一个使用 Bing 地图的 WPF 应用程序。我将它放在同时从 iframe 控件调用的页面控件中。一开始它显示地图,我可以毫无问题地放大和缩小。问题是,当我用鼠标左键单击地图时,它所做的是向下一点当前位置并自动进行放大,而不是保持单击完成的点一种拖放。就像谷歌地图一样。

这是我的 XAML 代码:

<Grid x:Name="LayoutRoot">
    <TextBlock Text="News page" FontSize="32" />

    <m:Map CredentialsProvider="..."
           Center="25.6732109,-100.309201" ZoomLevel="12" Mode="Road"/>

</Grid>

我正在使用以下程序集参考:xmlns:m="clr-namespace:Microsoft.Maps.MapControl.WPF;assembly=Microsoft.Maps.MapControl.WPF"

有谁知道我该如何解决?

问候!

4

2 回答 2

0

如果您在 Map 控件上使用鼠标向上或向下事件,这将正常工作。地图本身不会公开它自己的 Click 事件,但如果您使用鼠标向上/向下事件,则不需要它。

于 2014-09-17T14:21:34.947 回答
0

我有同样的问题。解决方案是在地图上添加一个 MouseDown 事件:

<m:Map                
    CredentialsProvider="<your Credentials>"
    Center="{Binding Center, Mode=TwoWay}"
    ZoomLevel="10"
    MouseDown="Map_MouseDown">
</m:Map>

在后面的代码中,您可以添加:

private void Map_MouseDown(object sender, MouseButtonEventArgs e)
{
    e.Handled = true;
}        

这会处理事件,并且不会进行进一步的处理。在此移动和拖动地图之后,地图就像通常的地图一样工作。

于 2021-12-09T15:19:54.847 回答