I'm trying to add a pin to a MapControl dynamically but it's not working despite using an import statement (using
). new Point(0.5, 1)
in NormalizedAnchorPoint = new Point(0.5, 1)
returns the following error. What's the correct way to resolve this?
Cannot implicitly convert type 'Windows.Foundation.Point' to 'System.Drawing.Point'
MainPage.xaml.cs
using System;
using System.Collections.Generic;
using TownTraveller.Data;
using TownTraveller.UserControls;
using Windows.Devices.Geolocation;
using Windows.Foundation;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
public MainPage()
{
this.InitializeComponent();
var mapPage = new MapPage();
var pinUri = new Uri("ms-appx:///Images/MapPin.png");
var myMapControl = pageMap.MyMapControl;
var mapCenter =
new Geopoint(new BasicGeoposition()
{
Latitude = 51053881,
Longitude = -0.100239
});
myMapControl.Center = mapCenter;
myMapControl.ZoomLevel = 10;
var MapPoints = new List<PointOfInterest>();
var mapPin1 = new PointOfInterest
{
PinName = "Pin1",
DisplayName = "Place One",
ImageSourceUri = pinUri,
),
Location = new Geopoint(new BasicGeoposition()
{
Latitude = 51.486223,
Longitude = -0.124474
})
};
MapPoints.Add(mapPin1);
}
}
'PointOfInterest' class
public class PointOfInterest
{
public string PinName { get; set; }
public string DisplayName { get; set; }
public Uri ImageSourceUri { get; set; }
public Point NormalizedAnchorPoint { get; set; }
public Geopoint Location { get; set; }
}
The problem is
NormalizedAnchorPoint
property is usingSystem.Drawing
namespace. And you could add the full namespaceWindows.Foundation.Point
forNormalizedAnchorPoint
to specific it's type like the following.