Hello experts. I hope someone can help me. A contractor developed an app for us, is gone and I need to make an enhancement such as grabbing Lat/Long from a browser QueryString and zoom/locate to that location.I've done ASP.NET but didn't work with ArcGIS, ESRI Silverlight framework or ASP.NET MVC.I can retrieve URL params but zooming doesn't work. I tried some examples from ESRI forums but no luck so far.Below is where I place my (bolded) code. Any suggestions/ideas to get it working? Thanks in advance.- Steve
void MainPage_Loaded(object sender, System.Windows.RoutedEventArgs e)
{
RoleAccess roleAccess = IoC.Resolve<RoleAccess>();
roleAccess.Initialize(() => Dispatcher.BeginInvoke(() =>
{
Map map = AddMap();
_nav.Map = map;
_scaleBar.Map = map;
var baseMapTabsViewModel = IoC.Resolve<BaseMapTabsViewModel>();
baseMapTabsViewModel.Map = map;
baseMapTabsViewModel.LayerID = "BaseLayer";
_baseMapTabs.DataContext = baseMapTabsViewModel;
var mapLayersMenuViewModel = IoC.Resolve<LayersMenuViewModel>();
mapLayersMenuViewModel.Map = map;
_mapLayersMenu.DataContext = mapLayersMenuViewModel;
_mapLayersMenu.Visibility = roleAccess.IsControlAvailable("layerList").ToVisibility();
_legend.DataContext = IoC.Resolve<LegendViewModel>();
_legend.Visibility = roleAccess.IsControlAvailable("legend").ToVisibility();
if (roleAccess.IsControlAvailable("identify"))
{
var identifyViewModel = IoC.Resolve<IdentifyViewModel>();
identifyViewModel.Map = map;
identifyViewModel.Symbol = DefaultPictureSymbol;
_identify.DataContext = identifyViewModel;
}
_identify.Visibility = roleAccess.IsControlAvailable("identify").ToVisibility();
_greeting.DataContext = IoC.Resolve<GreetingViewModel>();
var spacialBookmarksViewModel = IoC.Resolve<SpacialBookmarksViewModel>();
spacialBookmarksViewModel.Map = map;
_spacialBookmarks.DataContext = spacialBookmarksViewModel;
_spacialBookmarks.Visibility = roleAccess.IsControlAvailable("linkBookmarks").ToVisibility();
var searchResultsViewModel = IoC.Resolve<SearchResultsViewModel>();
searchResultsViewModel.Map = map;
searchResultsViewModel.Symbol = DefaultFillSymbol;
_searchResults.DataContext = searchResultsViewModel;
if (!roleAccess.IsControlAvailable("printing"))
_printButton.Visibility = Visibility.Collapsed;
_printButton.Click += (s, a) =>
{
var printDialogViewModel = IoC.Resolve<PrintDialogViewModel>();
printDialogViewModel.Map = map;
var printing = new PrintDialog();
printing.DataContext = printDialogViewModel;
printing.Show();
};
var locationDisplayViewModel = IoC.Resolve<LocationDisplayViewModel>();
locationDisplayViewModel.Map = map;
_locationDisplay.DataContext = locationDisplayViewModel;
_locationDisplay.Visibility = roleAccess.IsControlAvailable("locationDisplay").ToVisibility();
ZoomToViewModel zoomToViewModel = IoC.Resolve<ZoomToViewModel>();
zoomToViewModel.Map = map;
zoomToViewModel.Symbol = PoiMarkerSymbol;
zoomToViewModel.FillSymbol = DefaultFillSymbol;
_zoomTo.DataContext = zoomToViewModel;
_zoomTo.Visibility = roleAccess.IsControlAvailable("zoomTo").ToVisibility();
OverviewMapViewModel overviewMapViewModel = IoC.Resolve<OverviewMapViewModel>();
overviewMapViewModel.Map = map;
_overviewMap.DataContext = overviewMapViewModel;
double dblLat = Convert.ToDouble(HtmlPage.Document.QueryString["lat"]);
double dblLong = Convert.ToDouble(HtmlPage.Document.QueryString["long"]);
MapPoint myPoint = new MapPoint(dblLat, dblLong);
map.ZoomTo(myPoint);
}));
}