Example #1
0
        /// <summary>
        /// Асинхронно загружает адрес точки ряда
        /// </summary>
        private async void loadAddressAsync(PointLatLng point)
        {
            labelPointAddress.Text = "Поиск адреса...";
            await Task.Run(() =>
            {
                string adr = "";
                try
                {
                    adr = new Arcgis(Vars.Options.CacheFolder + "\\arcgis").GetAddress(point);
                }
                catch (Exception)
                {
                    adr = "Не удалось найти адрес";
                }

                _ = this.Invoke(new Action(() =>
                {
                    labelPointAddress.Text = adr;
                }));
            }).ConfigureAwait(false);
        }
        public FormSelectMapPointDialog(string caption, PointLatLng initialPoint, string cacheFolder, Icon marker, MapProviders provider)
        {
            InitializeComponent();
            Text             = caption;
            this.provider    = provider;
            this.cacheFolder = cacheFolder;
            this.marker      = marker;
            ConfigureGMapControl();
            this.initialPoint = initialPoint;
            if (!initialPoint.IsEmpty)
            {
                gmapControlMap.Position = initialPoint;
            }
            else
            {
                gmapControlMap.Position = new PointLatLng(55.75, 37.62);
            }

            gmapControlMap_OnPositionChanged(gmapControlMap.Position);
            toolStripTextBoxLat.Text = gmapControlMap.Position.Lat.ToString();
            toolStripTextBoxLon.Text = gmapControlMap.Position.Lng.ToString();
            DialogResult             = DialogResult.None;
            searcher = new Arcgis(cacheFolder + "\\arcgis");
        }