private void AddItem(DataTemplateSelector datatemplateSelector, object item)
{
var presenter = IoC.Container.Resolve<MapItem>();
presenter.RenderTransformOrigin = new Point(.5, .5);
presenter.DataContext = item;
var dataTemplate = datatemplateSelector.SelectTemplate(item, presenter);
presenter.ContentTemplate = dataTemplate;
_childControls.Add(item, presenter);
_mapControl.Children.Add(presenter);
var latitudeBinding = new Binding
{
Path = new PropertyPath(LocationAwareDataTemplate.GetLatitudePath(dataTemplate))
};
presenter.SetBinding(MapItem.LatitudeProperty, latitudeBinding);
var longitudeBinding = new Binding
{
Path = new PropertyPath(LocationAwareDataTemplate.GetLongitudePath(dataTemplate))
};
presenter.SetBinding(MapItem.LongitudeProperty, longitudeBinding);
}