コード例 #1
0
        private void FindAddressButton_Click(object sender, RoutedEventArgs e)

        {
            Locator locatorTask = new Locator("http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer");

            locatorTask.AddressToLocationsCompleted += LocatorTask_AddressToLocationsCompleted;
            locatorTask.Failed += LocatorTask_Failed;
            AddressToLocationsParameters addressParams = new AddressToLocationsParameters();

            Dictionary <string, string> address = addressParams.Address;

            if (!string.IsNullOrEmpty(Address.Text))
            {
                address.Add("Address", Address.Text);
            }
            if (!string.IsNullOrEmpty(City.Text))
            {
                address.Add("City", City.Text);
            }
            if (!string.IsNullOrEmpty(State.Text))
            {
                address.Add("Region", State.Text);
            }
            if (!string.IsNullOrEmpty(Zip.Text))
            {
                address.Add("Postal", Zip.Text);
            }
            address.Add("forStorage", "true");
            address.Add("token", "pgPwo32cfo-kLf0ABYjV9RZjxGNfFB4--xSkGLOY4bUx0UhmFMc0-06KJCPtx4uRsIGuO_9xn_cxI2G2w9IoD3hX7Q-LGulIg2VhKUcvklXu7CblMg1--yg5kznhXjSF");
            locatorTask.AddressToLocationsAsync(addressParams);
        }
コード例 #2
0
        private void FindAddressButton_Click(object sender, RoutedEventArgs e)
        {
            Locator locatorTask = new Locator("http://tasks.arcgisonline.com/ArcGIS/rest/services/Locators/TA_Streets_US_10/GeocodeServer");

            locatorTask.AddressToLocationsCompleted += LocatorTask_AddressToLocationsCompleted;
            locatorTask.Failed += LocatorTask_Failed;
            AddressToLocationsParameters addressParams = new AddressToLocationsParameters();
            Dictionary <string, string>  address       = addressParams.Address;

            if (!string.IsNullOrEmpty(Address.Text))
            {
                address.Add("Street", Address.Text);
            }
            if (!string.IsNullOrEmpty(City.Text))
            {
                address.Add("City", City.Text);
            }
            if (!string.IsNullOrEmpty(State.Text))
            {
                address.Add("State", State.Text);
            }
            if (!string.IsNullOrEmpty(Zip.Text))
            {
                address.Add("ZIP", Zip.Text);
            }

            locatorTask.AddressToLocationsAsync(addressParams);
        }
コード例 #3
0
        private void FindAddressButton_Click(object sender, RoutedEventArgs e)
        {
            _locatorTask = new Locator("http://tasks.arcgisonline.com/ArcGIS/rest/services/Locators/TA_Address_NA/GeocodeServer");
            _locatorTask.AddressToLocationsCompleted += LocatorTask_AddressToLocationsCompleted;
            _locatorTask.Failed += LocatorTask_Failed;

            AddressToLocationsParameters addressParams = new AddressToLocationsParameters()
            {
                OutSpatialReference = MyMap.SpatialReference
            };

            Dictionary <string, string> address = addressParams.Address;


            if (!string.IsNullOrEmpty(City.Text))
            {
                address.Add("City", City.Text);
            }
            if (!string.IsNullOrEmpty(State.Text))
            {
                address.Add("State", State.Text);
            }


            _locatorTask.AddressToLocationsAsync(addressParams);
        }
コード例 #4
0
        private void FindAddressButton_Click(object sender, RoutedEventArgs e)
        {
            graphicsLayer.ClearGraphics();
            AddressBorder.Visibility = Visibility.Collapsed;
            ResultsTextBlock.Visibility = Visibility.Collapsed;

            Locator locatorTask = new Locator("http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer");
            locatorTask.AddressToLocationsCompleted += LocatorTask_AddressToLocationsCompleted;
            locatorTask.Failed += LocatorTask_Failed;

            AddressToLocationsParameters addressParams = new AddressToLocationsParameters()
            {
                OutSpatialReference = MyMap.SpatialReference
            };

            Dictionary<string, string> address = addressParams.Address;

            if (!string.IsNullOrEmpty(Address.Text))
                address.Add("Address", Address.Text);
            if (!string.IsNullOrEmpty(City.Text))
                address.Add("City", City.Text);
            if (!string.IsNullOrEmpty(StateAbbrev.Text))
                address.Add("Region", StateAbbrev.Text);
            if (!string.IsNullOrEmpty(Zip.Text))
                address.Add("Postal", Zip.Text);

            locatorTask.AddressToLocationsAsync(addressParams);
        }
コード例 #5
0
        private void SearchLocation_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.Key != Key.Enter)
            {
                return;
            }
            TextBox tb = sender as TextBox;

            Locator locatorTask = new Locator("http://tasks.arcgisonline.com/ArcGIS/rest/services/Locators/ESRI_Places_World/GeocodeServer");

            locatorTask.AddressToLocationsCompleted += LocatorTask_AddressToLocationsCompleted;
            //locatorTask.Failed += LocatorTask_Failed;
            AddressToLocationsParameters addressParams = new AddressToLocationsParameters();
            Dictionary <string, string>  address       = addressParams.Address;

            addressParams.OutFields.Add("North_Lat");
            addressParams.OutFields.Add("South_Lat");
            addressParams.OutFields.Add("West_Lon");
            addressParams.OutFields.Add("East_Lon");
            addressParams.OutFields.Add("Descr");

            if (!string.IsNullOrEmpty(tb.Text))
            {
                address.Add("PlaceName", tb.Text);
            }
            else
            {
                return;
            }

            locatorTask.AddressToLocationsAsync(addressParams);
        }
コード例 #6
0
        private void FindAddressButton_Click(object sender, RoutedEventArgs e)

        {
   

            Locator locatorTask = new Locator("http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer");

            locatorTask.AddressToLocationsCompleted += LocatorTask_AddressToLocationsCompleted;
            locatorTask.Failed += LocatorTask_Failed;
            AddressToLocationsParameters addressParams = new AddressToLocationsParameters();
            
            Dictionary<string, string> address = addressParams.Address;

            if (!string.IsNullOrEmpty(Address.Text))
                address.Add("Address", Address.Text);
            if (!string.IsNullOrEmpty(City.Text))
                address.Add("City", City.Text);
            if (!string.IsNullOrEmpty(State.Text))
                address.Add("Region", State.Text);
            if (!string.IsNullOrEmpty(Zip.Text))
                address.Add("Postal", Zip.Text);
            address.Add("forStorage", "true");
            address.Add("token","pgPwo32cfo-kLf0ABYjV9RZjxGNfFB4--xSkGLOY4bUx0UhmFMc0-06KJCPtx4uRsIGuO_9xn_cxI2G2w9IoD3hX7Q-LGulIg2VhKUcvklXu7CblMg1--yg5kznhXjSF");
            locatorTask.AddressToLocationsAsync(addressParams);
        }
コード例 #7
0
        private void FindAddressButton_Click(object sender, RoutedEventArgs e)
        {
            _locatorTask = new Locator("http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer");
            _locatorTask.AddressToLocationsCompleted += LocatorTask_AddressToLocationsCompleted;
            _locatorTask.Failed += LocatorTask_Failed;

            AddressToLocationsParameters addressParams = new AddressToLocationsParameters()
            {
                OutSpatialReference = MyMap.SpatialReference
            };

            Dictionary <string, string> address = addressParams.Address;

            if (!string.IsNullOrEmpty(InputAddress.Text))
            {
                address.Add("Address", InputAddress.Text);
            }
            if (!string.IsNullOrEmpty(City.Text))
            {
                address.Add("City", City.Text);
            }
            if (!string.IsNullOrEmpty(State.Text))
            {
                address.Add("Region", State.Text);
            }
            if (!string.IsNullOrEmpty(Zip.Text))
            {
                address.Add("Postal", Zip.Text);
            }

            _locatorTask.AddressToLocationsAsync(addressParams);
        }
コード例 #8
0
ファイル: Geolocator.cs プロジェクト: jpenet/WebArcMap
 public void FindAddress(string streetName, string streetNumber, string postCode, string city)
 {
     try
     {
         locatorTask.AddressToLocationsCompleted +=
         locatorTask_AddressToLocationsCompleted;
         locatorTask.Failed += locatorTask_Failed;
         // Set parameters
         AddressToLocationsParameters addressParameters = new AddressToLocationsParameters();
         Dictionary<string, string> address = addressParameters.Address;
         //
         address.Add("Address", String.Format("{0} {1}", streetName, streetNumber));
         if (city.Length > 0)
             address.Add("City", city);
         address.Add("Country", "BE");
         if (postCode.Length > 0)
             address.Add("Postcode", postCode);
         locatorTask.AddressToLocationsAsync(addressParameters);
     }
     catch (Exception ex)
     {
         messageBoxCustom.Show(String.Format("FindAddress /{0}", ex.Message),
             GisTexts.SevereError,
             MessageBoxCustomEnum.MessageBoxButtonCustom.Ok);
     }
 }
コード例 #9
0
 private void findAddress()
 {
     try
     {
         if (_mapWidget != null)
         {
             _mapWidget.Map.MouseClick -= Map_MouseClick;
         }
         Locator locatorTask = new Locator("http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer");
         locatorTask.AddressToLocationsCompleted += new EventHandler <AddressToLocationsEventArgs>(locatorTask_AddressToLocationsCompleted);
         locatorTask.Failed += new EventHandler <TaskFailedEventArgs>(locatorTaskFindAddress_Failed);
         AddressToLocationsParameters addressParams = new AddressToLocationsParameters()
         {
             OutSpatialReference = _mapWidget.Map.SpatialReference
         };
         Dictionary <string, string> address = addressParams.Address;
         address.Add("SingleLine", txtAddress.Text);
         txtAddress.Text = "Enter Address";
         locatorTask.AddressToLocationsAsync(addressParams);
     }
     catch (Exception ex)
     {
         System.Diagnostics.Debug.WriteLine("error in find address: " + ex.Message);
     }
 }
コード例 #10
0
        private AddressToLocationsParameters ParseAddress(string address)
        {
            string[] fromArray = address.Split(new char[] { ',' });
            AddressToLocationsParameters fromAddress = new AddressToLocationsParameters();

            fromAddress.OutFields.Add("Loc_name");
            fromAddress.Address.Add("Address", fromArray[0]);
            fromAddress.Address.Add("City", fromArray[1]);
            fromAddress.Address.Add("State", fromArray[2]);
            fromAddress.Address.Add("Zip", fromArray[3]);
            fromAddress.Address.Add("Country", "USA");
            return(fromAddress);
        }
コード例 #11
0
        public void GeocodeAddress(string address, string city, string state, string zipCode, string country)
        {
            if (locatorConfig.EnableLocator == ServiceSource.BING)
            {
                ESRI.ArcGIS.Client.Bing.Geocoder bingLocator = new ESRI.ArcGIS.Client.Bing.Geocoder(locatorConfig.BingLocator.Token, locatorConfig.BingLocator.ServerType);
                address = (string.IsNullOrEmpty(address)) ? "" : address + ",";
                city    = (string.IsNullOrEmpty(city)) ? "" : city + ",";
                string formatAddress = string.Format("{0} {1} {2} {3}", address, city, state, zipCode, country);
                if (!string.IsNullOrEmpty(country))
                {
                    formatAddress += "," + country;
                }
                bingLocator.Geocode(formatAddress, new EventHandler <ESRI.ArcGIS.Client.Bing.GeocodeService.GeocodeCompletedEventArgs>(BingLocator_GeocodeCompleted));
            }
            else if (locatorConfig.ArcGISLocator != null)
            {
                ESRI.ArcGIS.Client.Tasks.Locator locatorTask = new ESRI.ArcGIS.Client.Tasks.Locator(locatorConfig.ArcGISLocator.RESTURL);
                locatorTask.AddressToLocationsCompleted += new EventHandler <ESRI.ArcGIS.Client.Tasks.AddressToLocationsEventArgs>(ArcGISLocator_GeocodeCompleted);
                locatorTask.Failed += new EventHandler <TaskFailedEventArgs>(ArcGISLocatorTask_Failed);
                AddressToLocationsParameters addressParams = new AddressToLocationsParameters();
                ArcGISLocatorParams          paramFields   = locatorConfig.ArcGISLocator.ParameterFields;

                if (!string.IsNullOrEmpty(paramFields.AddressField))
                {
                    addressParams.Address.Add(paramFields.AddressField, address);
                }
                if (!string.IsNullOrEmpty(paramFields.CityField))
                {
                    addressParams.Address.Add(paramFields.CityField, city);
                }
                if (!string.IsNullOrEmpty(paramFields.StateField))
                {
                    addressParams.Address.Add(paramFields.StateField, state);
                }
                if (!string.IsNullOrEmpty(paramFields.ZipField))
                {
                    addressParams.Address.Add(paramFields.ZipField, zipCode);
                }
                if (!string.IsNullOrEmpty(paramFields.CountryField))
                {
                    addressParams.Address.Add(paramFields.CountryField, country);
                }

                locatorTask.AddressToLocationsAsync(addressParams);
            }
        }
コード例 #12
0
        /// <summary>
        /// Geocoding a single line address - using a locator service of ArcGIS Server above 10.0
        /// </summary>
        /// <param name="singleLineAddress">Single Line Address</param>
        public void GeocodeAddress(string singleLineAddress)
        {
            if (locatorConfig.EnableLocator == ServiceSource.BING)
            {
                ESRI.ArcGIS.Client.Bing.Geocoder bingLocator = new ESRI.ArcGIS.Client.Bing.Geocoder(locatorConfig.BingLocator.Token, locatorConfig.BingLocator.ServerType);
                bingLocator.Geocode(singleLineAddress, new EventHandler <ESRI.ArcGIS.Client.Bing.GeocodeService.GeocodeCompletedEventArgs>(BingLocator_GeocodeCompleted));
            }
            else if (locatorConfig.ArcGISLocator != null)
            {
                ESRI.ArcGIS.Client.Tasks.Locator locatorTask = new ESRI.ArcGIS.Client.Tasks.Locator(locatorConfig.ArcGISLocator.RESTURL);
                locatorTask.AddressToLocationsCompleted += new EventHandler <ESRI.ArcGIS.Client.Tasks.AddressToLocationsEventArgs>(ArcGISLocator_GeocodeCompleted);
                locatorTask.Failed += new EventHandler <TaskFailedEventArgs>(ArcGISLocatorTask_Failed);
                AddressToLocationsParameters addressParams = new AddressToLocationsParameters();
                addressParams.Address.Add("SingleLine", singleLineAddress);

                locatorTask.AddressToLocationsAsync(addressParams);
            }
        }
コード例 #13
0
        private void FindAddressButton_Click(object sender, RoutedEventArgs e)
        {
            graphicsLayer.ClearGraphics();
            AddressBorder.Visibility    = Visibility.Collapsed;
            ResultsTextBlock.Visibility = Visibility.Collapsed;

            Locator locatorTask = new Locator("http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer");

            locatorTask.AddressToLocationsCompleted += LocatorTask_AddressToLocationsCompleted;
            locatorTask.Failed += LocatorTask_Failed;

            AddressToLocationsParameters addressParams = new AddressToLocationsParameters()
            {
                OutSpatialReference = MyMap.SpatialReference
            };

            Dictionary <string, string> address = addressParams.Address;

            if (!string.IsNullOrEmpty(Address.Text))
            {
                address.Add("Address", Address.Text);
            }
            if (!string.IsNullOrEmpty(City.Text))
            {
                address.Add("City", City.Text);
            }
            if (!string.IsNullOrEmpty(StateAbbrev.Text))
            {
                address.Add("Region", StateAbbrev.Text);
            }
            if (!string.IsNullOrEmpty(Zip.Text))
            {
                address.Add("Postal", Zip.Text);
            }

            locatorTask.AddressToLocationsAsync(addressParams);
        }
コード例 #14
0
        private void FindAddressButton_Click(object sender, RoutedEventArgs e)
        {
            _locatorTask = new Locator("http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer");
            _locatorTask.AddressToLocationsCompleted += LocatorTask_AddressToLocationsCompleted;
            _locatorTask.Failed += LocatorTask_Failed;

            AddressToLocationsParameters addressParams = new AddressToLocationsParameters()
            {
                OutSpatialReference = MyMap.SpatialReference
            };

            Dictionary<string, string> address = addressParams.Address;

            if (!string.IsNullOrEmpty(InputAddress.Text))
                address.Add("Address", InputAddress.Text);
            if (!string.IsNullOrEmpty(City.Text))
                address.Add("City", City.Text);
            if (!string.IsNullOrEmpty(State.Text))
                address.Add("Region", State.Text);
            if (!string.IsNullOrEmpty(Zip.Text))
                address.Add("Postal", Zip.Text);

            _locatorTask.AddressToLocationsAsync(addressParams);
        }
コード例 #15
0
        private void FindAddressButton_Click(object sender, RoutedEventArgs e)
        {
            _locatorTask = new Locator("http://tasks.arcgisonline.com/ArcGIS/rest/services/Locators/TA_Streets_US/GeocodeServer");
            _locatorTask.AddressToLocationsCompleted += LocatorTask_AddressToLocationsCompleted;
            _locatorTask.Failed += LocatorTask_Failed;

            AddressToLocationsParameters addressParams = new AddressToLocationsParameters()
            {
                OutSpatialReference = Map.SpatialReference
            };

            Dictionary<string, string> address = addressParams.Address;

            if (!string.IsNullOrEmpty(InputAddress.Text))
                address.Add("Street", InputAddress.Text);
            if (!string.IsNullOrEmpty(City.Text))
                address.Add("City", City.Text);
            if (!string.IsNullOrEmpty(State.Text))
                address.Add("State", State.Text);
            if (!string.IsNullOrEmpty(Zip.Text))
                address.Add("ZIP", Zip.Text);

            _locatorTask.AddressToLocationsAsync(addressParams);
        }
コード例 #16
0
 private void findAddress()
 {
     try
     {
         if (_mapWidget != null)
         {
             _mapWidget.Map.MouseClick -= Map_MouseClick;
         }
         Locator locatorTask = new Locator("http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer");
         locatorTask.AddressToLocationsCompleted += new EventHandler<AddressToLocationsEventArgs>(locatorTask_AddressToLocationsCompleted);
         locatorTask.Failed += new EventHandler<TaskFailedEventArgs>(locatorTaskFindAddress_Failed);
         AddressToLocationsParameters addressParams = new AddressToLocationsParameters()
         {
             OutSpatialReference = _mapWidget.Map.SpatialReference
         };
         Dictionary<string, string> address = addressParams.Address;
         address.Add("SingleLine", txtAddress.Text);
         txtAddress.Text = "Enter Address";
         locatorTask.AddressToLocationsAsync(addressParams);
     }
     catch (Exception ex)
     {
         System.Diagnostics.Debug.WriteLine("error in find address: " + ex.Message);
     }
 }
        // Executes the search
        protected override void doSearch(object parameter)
        {
            base.doSearch(parameter);

            IsSearching = true; // Update busy state so new searches can't be initiated until the current one completes or fails
            _results.Clear(); // Clear results from previous searches
            _queuedResults.Clear();

            // Determine whether input has been passed directly to command or is from Input property
            string input = !string.IsNullOrEmpty(parameter as string) ? parameter as string : Input as string;

            // Trim whitespace from input
            string searchString = input.ToString().Trim();

            // Initialize parameters for place search
            AddressToLocationsParameters locationParameters = new AddressToLocationsParameters();

            // Map the input to the locator's single line address field.  This implementation only supports
            // single-line geocoding.
            locationParameters.Address.Add(LocatorInfo.SingleLineAddressField.Name, searchString);

            // Specify output fields
            if (OutFields.Contains("*"))
            {
                locationParameters.OutFields.Add("*");
            }
            else
            {
                foreach (string field in OutFields)
                    locationParameters.OutFields.Add(field);
            }

            // If extent fields are being used, make sure these are included in the output
            if (UseExtentFields && !locationParameters.OutFields.Contains("*"))
            {
                if (!locationParameters.OutFields.Contains(ExtentFields.XMinField.Name))
                    locationParameters.OutFields.Add(ExtentFields.XMinField.Name);
                if (!locationParameters.OutFields.Contains(ExtentFields.YMinField.Name))
                    locationParameters.OutFields.Add(ExtentFields.YMinField.Name);
                if (!locationParameters.OutFields.Contains(ExtentFields.XMaxField.Name))
                    locationParameters.OutFields.Add(ExtentFields.XMaxField.Name);
                if (!locationParameters.OutFields.Contains(ExtentFields.YMaxField.Name))
                    locationParameters.OutFields.Add(ExtentFields.YMaxField.Name);
            }

            locationParameters.OutSpatialReference = _map.SpatialReference;

            // Execute the search
            _locator.AddressToLocationsAsync(locationParameters);
        }
コード例 #18
0
 private AddressToLocationsParameters ParseAddress(string address)
 {
     string[] fromArray = address.Split(new char[] { ',' });
     AddressToLocationsParameters fromAddress = new AddressToLocationsParameters();
     fromAddress.OutFields.Add("Loc_name");
     fromAddress.Address.Add("Address", fromArray[0]);
     fromAddress.Address.Add("City", fromArray[1]);
     fromAddress.Address.Add("State", fromArray[2]);
     fromAddress.Address.Add("Zip", fromArray[3]);
     fromAddress.Address.Add("Country", "USA");
     return fromAddress;
 }