/// <summary> /// event for searching poi based on your own location from device /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void Button_Tapped_MyLoc(object sender, TappedRoutedEventArgs e) { try { //check if there isnt a Gelocator object, if there isnt instantiate the object if (gg == null) { gg = new Geolocator(); } //get position Geoposition position = await gg.GetGeopositionAsync(); //fill out forms Latitude.Text = String.Format("LAT: {0}", position.Coordinate.Point.Position.Latitude.ToString()); Longitude.Text = String.Format("LONG: {0}", position.Coordinate.Point.Position.Longitude.ToString()); SearchInput.Text = String.Format("Source: {0} , Country: {1}", position.Coordinate.PositionSource.ToString(), position.CivicAddress.Country); _searchWithFilter = (bool)FilterCheck.IsChecked; MyLocation location = new MyLocation(_map, _mapLayer, this, _searchWithFilter, key); //set Location OBJ LAt and Long location._radius = _changedRadius; location._latitude = position.Coordinate.Point.Position.Latitude; location._longitude = position.Coordinate.Point.Position.Longitude; if (_searchWithFilter) { //pick filter location.findFilter(_filter); } //start search just by loc only viewmodel = new VM(this); viewmodel.search(false, location); } catch(Exception ex) { var messageDialog = new MessageDialog(ex.Message); messageDialog.ShowAsync(); } }
/// <summary> /// if they hitt search button event, will search for what the user wants /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void Button_Tapped_Search(object sender, TappedRoutedEventArgs e) { //find out whether the fileter box is checked try { _searchWithFilter = (bool)FilterCheck.IsChecked; //get the location from a search input and set values in the location object MyLocation location = new MyLocation(_map, _mapLayer, this, _searchWithFilter, key); location._searcher = SearchInput.Text; location._radius = _changedRadius; //if searching with filter, find the filter value if (_searchWithFilter) { //pick filter location.findFilter(_filter); } //instantiate VM and call search by filter viewmodel = new VM(this); viewmodel.search(true, location); } catch(Exception ex) { //display exception var messageDialog = new MessageDialog(ex.Message); messageDialog.ShowAsync(); } }
/// <summary> /// will search based off of longitude and latitude /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void Button_Tapped_Loc(object sender, TappedRoutedEventArgs e) { try { _searchWithFilter = (bool)FilterCheck.IsChecked; MyLocation location = new MyLocation(_map, _mapLayer, this, _searchWithFilter, key); //set values using the given lat AND long location._radius = _changedRadius; location._latitude = Convert.ToDouble(Latitude.Text); location._longitude = Convert.ToDouble(Longitude.Text); if (_searchWithFilter) { //pick filter location.findFilter(_filter); } //search just by loc viewmodel = new VM(this); viewmodel.search(false, location); } catch(Exception ex) { //display exception var messageDialog = new MessageDialog(ex.Message); messageDialog.ShowAsync(); } }