【问题标题】:How to drag a pushpin and get location using Bing Maps in Windows 8.1?如何在 Windows 8.1 中使用 Bing 地图拖动图钉并获取位置?
【发布时间】:2015-04-16 14:18:27
【问题描述】:

我目前正在使用 Windows 8.1 应用程序中的 Bing 地图,其中需要拖动图钉并在放下图钉时获取位置。我使用的图钉是第三方控件,我在 Google 上进行了一些搜索后发现。但由于我是 Windows 8.1 开发的新手,我不太了解触摸事件以及如何处理拖动事件。任何人都可以用一些示例代码建议我如何做到这一点。

请帮忙。

此外,在显示位置时,我面临放大和缩小问题,图钉会从其位置移开。这是我显示位置的代码

Map map = frameworkElement as Map;
map.Credentials = "My Bing Maps Key";
//map. = MapCartographicMode.Road;
map.ZoomLevel = 15;
Bing.Maps.Location location = new Bing.Maps.Location()
{
    Latitude = Convert.ToDouble(value.GetType().GetRuntimeProperty("LATITUDE").GetValue(value, null)),
    Longitude = Convert.ToDouble(value.GetType().GetRuntimeProperty("LONGITUDE").GetValue(value, null))
};
MapLayer layer = new MapLayer();
map.Children.Add(layer);
MapControl.Pushpin pushpinPin = new MapControl.Pushpin();
pushPin.Background = new SolidColorBrush(Colors.Red);
pushPin.Margin = new Thickness(-12, -12, 0, 0);
TextBlock Nametxtblk = new TextBlock()
{
    Text = value.COUNCIL_NAME,
    Width = 250,
    TextWrapping = TextWrapping.Wrap,

};
pushPin.Content = Nametxtblk;
MapLayer.SetPosition(pushPin, location);
//MapLayer.SetPositionAnchor(pushPin, new Point(Width/2, Height/2));
layer.Children.Add(pushPin);
map.SetView(location);
break;

这里,MapControl.Pushpin 是一个第三方控件,我用它来显示位置。

更新

我在下面添加我的图钉图片。请建议。

【问题讨论】:

    标签: c# windows-8.1 bing-maps


    【解决方案1】:

    我有一个关于如何在 Windows 8.1 上的 Bing 地图中创建可拖动图钉的代码示例:https://code.msdn.microsoft.com/Draggable-Pushpin-in-Bing-939eaaa5

    【讨论】:

    • 我在 msdn 上看到了这个示例,但我想在不使用用户控件的情况下创建它。是否可以稍微更改您的代码并解释我如何实现我的要求。这将是一个很大的帮助。
    • 不使用用户控件是一种选择,但会使事情变得有点混乱。您需要编写一堆代码来使用 Pushpin 类上的事件。您应该能够从我的代码示例中移植很多内容。如果您使用的图钉类不是密封的,您可以尝试添加扩展以使事情更整洁。
    • 感谢 rbrunditt。我会检查这个。您能否就放大和缩小问题提出建议,我也添加了代码。
    • 您的缩放问题相当简单。问题是您的图钉锚定到您的坐标的点不正确,这会导致漂移效应。您可以使用边距重新定位图钉,以便图钉的正确点与您的坐标对齐。这是关于此主题的博客文章:rbrundritt.wordpress.com/2014/10/02/…
    • 我尝试设置负边距,但没有帮助。问题是,pin 固定在左上角而不是底部。如果你需要我的图钉图片,我可以给你看。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-17
    相关资源
    最近更新 更多