ArcMapAddinCoordinateConversion.ContextCopyBase.OnClick C# (CSharp) Метод

OnClick() защищенный Метод

protected OnClick ( ) : void
Результат void
        protected override void OnClick()
        {
            if (ArcMap.Document == null || ArcMap.Document.CurrentLocation == null || ctype == CoordinateConversionLibrary.Models.CoordinateType.Unknown)
                return;

            var point = ArcMap.Document.CurrentLocation;

            string coord = string.Empty;

            try
            {
                var cn = point as IConversionNotation;

                switch(ctype)
                {
                    case CoordinateType.DD:
                        coord = cn.GetDDFromCoords(6);
                        break;
                    case CoordinateType.DDM:
                        coord = cn.GetDDMFromCoords(6);
                        break;
                    case CoordinateType.DMS:
                        coord = cn.GetDMSFromCoords(2);
                        break;
                    case CoordinateType.GARS:
                        coord = cn.GetGARSFromCoords();
                        break;
                    case CoordinateType.MGRS:
                        coord = cn.CreateMGRS(5, true, esriMGRSModeEnum.esriMGRSMode_Automatic);
                        break;
                    case CoordinateType.USNG:
                        coord = cn.GetUSNGFromCoords(5, true, true);
                        break;
                    case CoordinateType.UTM:
                        coord = cn.GetUTMFromCoords(esriUTMConversionOptionsEnum.esriUTMAddSpaces | esriUTMConversionOptionsEnum.esriUTMUseNS);
                        break;
                    default:
                        break;
                }

                var doc = AddIn.FromID<ArcMapAddinCoordinateConversion.DockableWindowCoordinateConversion.AddinImpl>(ThisAddIn.IDs.DockableWindowCoordinateConversion);

                if (doc != null)
                {
                    var vm = doc.GetMainVM();

                    if(vm != null)
                    {
                        coord = vm.GetFormattedCoordinate(coord, ctype);
                    }
                }

                System.Windows.Clipboard.SetText(coord);
            }
            catch { }
        }