如何设置xaml mapcontrol mapicon始终可见

时间:2014-12-24 14:27:16

标签: xaml windows-phone-8.1

我在XAML中编程相当新,我在带有MapControl的Windows Phone 8.1模拟器上制作测试应用程序。

我想将MapIcon添加到地图中,但地图缩小时图标不会显示。我在互联网上搜索过,无法找到有关我问题的任何内容。

我想要我的zoomlevel 12并在缩放级别上显示mapicon。

namespace TEST.APPLICATION
{
public partial class MapView : Page
{
    Geolocator geo = null;
    public MapView()
    {
        this.InitializeComponent();
        this.NavigationCacheMode = NavigationCacheMode.Required;
        HardwareButtons.BackPressed += HardwareButtons_BackPressed;
    }
    void HardwareButtons_BackPressed(object sender, BackPressedEventArgs e)
    {
        if (Frame.CanGoBack)
        {
            e.Handled = true;
            Frame.GoBack();
        }
    }

    protected override void OnNavigatedTo(NavigationEventArgs e)
    {
        map.Center = new Geopoint(new BasicGeoposition()
           {
              Latitude = 51.5856935784736,
              Longitude = 4.79448171225132
           });
        map.ZoomLevel = 12;

        displaySightings();
    }

    private void displaySightings()
    {
        MapIcon sighting1 = new MapIcon();
        sighting1.Location = new Geopoint(new BasicGeoposition()
        {
            Latitude = 51.5940,
            Longitude = 4.7795
        });
        //sighting1.NormalizedAnchorPoint = new Point(0.5, 1.0);
        sighting1.Title = "VVV";
        map.MapElements.Add(sighting1);
    }
}

有没有办法让MapIcon始终可见?

1 个答案:

答案 0 :(得分:2)

The MapIcon is not guaranteed to be shown. It may be hidden when it obscures other elements or labels on the map

出于某些愚蠢的原因,微软认为标签和其他地图元素在渲染显示时应该超过地图图标。因此,如果您正在制作一个显示所有附近星巴克位置的应用程序,那么星巴克街对面的高中的名称比图钉更重要。据他们说。 p>

您需要使用XAML渲染图钉。