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.
73 lines
2.9 KiB
73 lines
2.9 KiB
using ESRI.ArcGIS.Carto; |
|
using ESRI.ArcGIS.Controls; |
|
using KGIS.Framework.AE.ExtensionMethod; |
|
using KGIS.Framework.Commands; |
|
using KGIS.Framework.Core.Attributes; |
|
using KGIS.Framework.Maps; |
|
using KGIS.Framework.Platform; |
|
using KGIS.Framework.Utils; |
|
using KGIS.Framework.Utils.Helper; |
|
using KGIS.Plugin.LayerProperty.Interface; |
|
using KGIS.Plugin.LayerProperty.View; |
|
using System; |
|
|
|
namespace KGIS.Plugin.LayerProperty.Commands |
|
{ |
|
//[PathAttribute("KGIS.Plugin.LayerProperty.Commands.CmdLayerProperty")] |
|
public class CmdLayerProperty : BaseMapMenuCommand |
|
{ |
|
private IDataCatalogService _DataCatalogService; |
|
private ILayerPropertiesSet frm; |
|
public override void OnClick() |
|
{ |
|
try |
|
{ |
|
//KGIS.Framework.Common.Utils.LicenseManager.License(); |
|
object layer = m_hookHelper.GetCustomProperty(); |
|
if (layer is ILayer) |
|
{ |
|
frm.ApplyLayerPropertiesSet += delegate |
|
{ |
|
if (_DataCatalogService == null) |
|
_DataCatalogService = UIShell.OSGi.BundleRuntime.Instance.GetFirstOrDefaultService<IDataCatalogService>(); |
|
if (_DataCatalogService != null) |
|
{ |
|
_DataCatalogService.UpdateLayer(layer); |
|
} |
|
if (m_hookHelper.ActiveView != null) |
|
{ |
|
//调用此函数使TOC能够被update |
|
m_hookHelper.ActiveView.ContentsChanged(); |
|
m_hookHelper.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewBackground | esriViewDrawPhase.esriViewForeground | |
|
esriViewDrawPhase.esriViewGeography | esriViewDrawPhase.esriViewGeoSelection | |
|
esriViewDrawPhase.esriViewGraphics | esriViewDrawPhase.esriViewGraphicSelection, null, m_hookHelper.ActiveView.Extent); |
|
} |
|
}; |
|
if (frm.InitForm(layer as ILayer)) |
|
frm.ShowDialog(ExtensionShowWindow.MainWinForm); |
|
//Platform.Instance.SendMsg(new KGIS.Framework.Utils.Interface.NotifyMsgPackage() { MsgType = "SaveProject" }); |
|
} |
|
} |
|
catch (Exception ex) |
|
{ |
|
LogAPI.Debug("加载图层属性时发生异常,异常信息如下:"); |
|
LogAPI.Debug(ex); |
|
LogAPI.Debug("异常信息结束。"); |
|
} |
|
} |
|
|
|
public override void OnCreate(object Hook) |
|
{ |
|
if (m_hookHelper == null) |
|
{ |
|
m_hookHelper = new HookHelper(); |
|
m_hookHelper.Hook = Hook; |
|
} |
|
if (frm == null) |
|
{ |
|
frm = new FrmLayerProperty(); |
|
} |
|
frm.InitiateForm(); |
|
} |
|
} |
|
}
|
|
|