Ejemplo n.º 1
0
        private void LatLonFromat_dropDown_SelectionChanged(object sender, RibbonControlEventArgs e)
        {
            CoordinateFormat      coordinateFormat      = null;
            DecimalDegrees        decimalDegrees        = new DecimalDegrees();
            DegreesDecimalMinutes degreesDecimalMinutes = new DegreesDecimalMinutes();
            DegreesMinutesSeconds degreesMinutesSeconds = new DegreesMinutesSeconds();

            if (!(String.IsNullOrEmpty(this.Longitude_editBox.Text) || String.IsNullOrEmpty(this.Latitude_editBox.Text)))
            {
                if (decimalDegrees.TryParse(this.Longitude_editBox.Text, this.Latitude_editBox.Text, out decimalDegrees))
                {
                    coordinateFormat = decimalDegrees;
                }
                else if (degreesDecimalMinutes.TryParse(this.Longitude_editBox.Text, this.Latitude_editBox.Text, out degreesDecimalMinutes))
                {
                    coordinateFormat = degreesDecimalMinutes;
                }
                else if (degreesMinutesSeconds.TryParse(this.Longitude_editBox.Text, this.Latitude_editBox.Text, out degreesMinutesSeconds))
                {
                    coordinateFormat = degreesMinutesSeconds;
                }

                if (coordinateFormat != null)
                {
                    try
                    {
                        switch (this.LatLonFromat_dropDown.SelectedItem.Label)
                        {
                        case "Decimal Degrees":
                            decimalDegrees              = coordinateFormat.ToDecimalDegrees();
                            this.Latitude_editBox.Text  = decimalDegrees.Latitude.ToString("0.#####");
                            this.Longitude_editBox.Text = decimalDegrees.Longitude.ToString("0.#####");
                            break;

                        case "Degrees Decimal Minutes":
                            degreesDecimalMinutes       = coordinateFormat.ToDegreesDecimalMinutes();
                            this.Latitude_editBox.Text  = degreesDecimalMinutes.Latitude;
                            this.Longitude_editBox.Text = degreesDecimalMinutes.Longitude;
                            break;

                        case "Degrees Minutes Seconds":
                            degreesMinutesSeconds       = coordinateFormat.ToDegreesMinutesSeconds();
                            this.Latitude_editBox.Text  = degreesMinutesSeconds.Latitude;
                            this.Longitude_editBox.Text = degreesMinutesSeconds.Longitude;
                            break;
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("Invalid input. " + ex.Message);
                    }
                }
                else
                {
                    MessageBox.Show("Invalid input.");
                }
            }
        }
Ejemplo n.º 2
0
        private void LatLonFromat_dropDown_SelectionChanged(object sender, RibbonControlEventArgs e)
        {
            CoordinateFormat coordinateFormat = null;
            DecimalDegrees decimalDegrees = new DecimalDegrees();
            DegreesDecimalMinutes degreesDecimalMinutes = new DegreesDecimalMinutes();
            DegreesMinutesSeconds degreesMinutesSeconds = new DegreesMinutesSeconds();

            if (!(String.IsNullOrEmpty(this.Longitude_editBox.Text) || String.IsNullOrEmpty(this.Latitude_editBox.Text)))
            {
                if (decimalDegrees.TryParse(this.Longitude_editBox.Text, this.Latitude_editBox.Text, out decimalDegrees))
                {
                    coordinateFormat = decimalDegrees;
                }
                else if (degreesDecimalMinutes.TryParse(this.Longitude_editBox.Text, this.Latitude_editBox.Text, out degreesDecimalMinutes))
                {
                    coordinateFormat = degreesDecimalMinutes;
                }
                else if (degreesMinutesSeconds.TryParse(this.Longitude_editBox.Text, this.Latitude_editBox.Text, out degreesMinutesSeconds))
                {
                    coordinateFormat = degreesMinutesSeconds;
                }

                if (coordinateFormat != null)
                {
                    try
                    {
                        switch (this.LatLonFromat_dropDown.SelectedItem.Label)
                        {
                            case "Decimal Degrees":
                                decimalDegrees = coordinateFormat.ToDecimalDegrees();
                                this.Latitude_editBox.Text = decimalDegrees.Latitude.ToString("0.#####");
                                this.Longitude_editBox.Text = decimalDegrees.Longitude.ToString("0.#####");
                                break;
                            case "Degrees Decimal Minutes":
                                degreesDecimalMinutes = coordinateFormat.ToDegreesDecimalMinutes();
                                this.Latitude_editBox.Text = degreesDecimalMinutes.Latitude;
                                this.Longitude_editBox.Text = degreesDecimalMinutes.Longitude;
                                break;
                            case "Degrees Minutes Seconds":
                                degreesMinutesSeconds = coordinateFormat.ToDegreesMinutesSeconds();
                                this.Latitude_editBox.Text = degreesMinutesSeconds.Latitude;
                                this.Longitude_editBox.Text = degreesMinutesSeconds.Longitude;
                                break;
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("Invalid input. " + ex.Message);
                    }
                }
                else
                {
                    MessageBox.Show("Invalid input.");
                }
            }
        }