年度变更建库软件5.0版本
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.

72 lines
2.2 KiB

4 months ago
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("异常信息结束");
}
}
}
}