You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							71 lines
						
					
					
						
							2.2 KiB
						
					
					
				
			
		
		
	
	
							71 lines
						
					
					
						
							2.2 KiB
						
					
					
				using ESRI.ArcGIS.Carto; | 
						|
using ESRI.ArcGIS.Controls; | 
						|
using KGIS.Framework.AE.ExtensionMethod; | 
						|
using KGIS.Framework.Maps; | 
						|
using KGIS.Framework.Utils; | 
						|
using KGIS.Framework.Utils.Helper; | 
						|
using Kingo.Plugin.MapView.Views; | 
						|
using System; | 
						|
 | 
						|
namespace Kingo.Plugin.MapView.Commands | 
						|
{ | 
						|
    public class ClaculationMJCmd : BaseMapMenuCommand | 
						|
    { | 
						|
        BaseWindow window = null; | 
						|
        public override void OnClick() | 
						|
        { | 
						|
            if (m_hookHelper == null) | 
						|
                return; | 
						|
            IFeatureLayer layer = null; | 
						|
            try | 
						|
            { | 
						|
                object obj = m_hookHelper.GetCustomProperty(); | 
						|
                if (obj != null && obj is ILayer) | 
						|
                { | 
						|
                    if (obj is IFeatureLayer) | 
						|
                    { | 
						|
                        layer = obj as IFeatureLayer; | 
						|
                    } | 
						|
                } | 
						|
                if (layer != null) | 
						|
                { | 
						|
                    window = new UcClaculationMJView(layer); | 
						|
                    window.Title = (obj as ILayer).Name + window.Title; | 
						|
                    window.ResizeMode = System.Windows.ResizeMode.NoResize; | 
						|
                    window.Closed += Window_Closed; | 
						|
                    window.ShowInMainWindow(true); | 
						|
                } | 
						|
            } | 
						|
            catch (Exception ex) | 
						|
            { | 
						|
                MessageHelper.ShowError(string.Format("计算椭球面积失败!{0}", ex.Message)); | 
						|
                LogAPI.Debug("计算椭球面积时发生异常,异常信息如下:"); | 
						|
                LogAPI.Debug(ex); | 
						|
                LogAPI.Debug("异常信息结束。"); | 
						|
            } | 
						|
        } | 
						|
 | 
						|
        private void Window_Closed(object sender, EventArgs e) | 
						|
        { | 
						|
            window = null; | 
						|
        } | 
						|
 | 
						|
        public override void OnCreate(object Hook) | 
						|
        { | 
						|
            try | 
						|
            { | 
						|
                if (m_hookHelper == null) | 
						|
                { | 
						|
                    m_hookHelper = new HookHelper(); | 
						|
                    m_hookHelper.Hook = Hook; | 
						|
                } | 
						|
            } | 
						|
            catch (Exception ex) | 
						|
            { | 
						|
                LogAPI.Debug("加载 计算椭球面积 命令时发生异常,异常信息如下:"); | 
						|
                LogAPI.Debug(ex); | 
						|
                LogAPI.Debug("异常信息结束"); | 
						|
            } | 
						|
        } | 
						|
    } | 
						|
}
 | 
						|
 |