void btn_source_Click(object sender, RoutedEventArgs e)
{
_externalSource = false;
if (Mymap.Layers.Contains(floorPoisDetail))
{
Mymap.Layers.Remove(floorPoisDetail);
floorPoisDetail.Clear();
}
if (Mymap.Layers.Contains(indoorLayer))
Mymap.Layers.Remove(indoorLayer);
if (Mymap.Layers.Contains(_sourceLayer))
Mymap.Layers.Remove(_sourceLayer);
// clear directions
if (GetRoute.Count != 0)
{
GetRoute.Clear();
if (_myMapRoute != null)
{
routedetails_layer.Clear();
Mymap.RemoveRoute(_myMapRoute);
Mymap.Layers.Remove(routedetails_layer);
routeNavDetails.Clear();
}
}
MoveViewWindow(30);
if (directions_grid.Visibility == Visibility.Visible)
{
directions_grid.Visibility = Visibility.Collapsed;
stackpanelClose();
}
ApplicationBar.IsVisible = true;
_sourcePoi = true;
var button = sender as Button;
var context = button.DataContext as PoiTap;
_floorPoiFrom = context.poiId;
_floorPoiFromNumber = context.poiFloor;
if (Mymap.MapElements.Contains(_polyline))
{
Mymap.MapElements.Remove(_polyline);
BuildingSourcePoi();
}
else
{
var imageMylocation = new Image
{
Source = new BitmapImage(new Uri("/Assets/source.png", UriKind.Relative))
};
_sourceOverlay = new MapOverlay();
_sourceLayer = new MapLayer();
_sourceOverlay.Content = imageMylocation;
_sourceOverlay.GeoCoordinate = context.coordinate;
_sourceOverlay.PositionOrigin = new Point(0.5, 1);
_sourceLayer.Add(_sourceOverlay);
Mymap.Layers.Add(_sourceLayer);
}
}