我是靠谱客的博主 沉默店员,最近开发中收集的这篇文章主要介绍ArcGIS Pro 加载项(2)——修复图层及独立表名称,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

使用模型构建器的过程中,因为模型中使用了行内变量,并且输出结果使用了添加至显示,结果在内容面板中自动添加上来的图层和独立表的名称都是带了 %行内变量% 的名称。移除之后从目录中重新添加会正常显示原始的名称,但是觉得点选之后添加比较麻烦,所以想到使用SDK构建按钮一键修复图层和独立表的显示名称。效果图如下
在这里插入图片描述

按钮核心代码

protected override void OnClick()
{
    var mv = MapView.Active;
    var lyrs = mv.Map.Layers;
    var tables = mv.Map.StandaloneTables;
    foreach (var lyr in lyrs)
    {
	    if(lyr is FeatureLayer)
	    {
	        FeatureLayer featureLayer = lyr as FeatureLayer;
	        //RemoveLayers方法必须在QueuedTask.Run中运行
	        QueuedTask.Run(() =>
	        {
	            string featureLayerName = featureLayer.GetFeatureClass().GetName();
	            lyr.SetName(featureLayerName);
	        });
	    }
    }

    foreach (var table in tables)
    {
        QueuedTask.Run(() =>
        {
            string tableName = table.GetTable().GetName();
            table.SetName(tableName);
        });
    }
}

DAML中需要添加的代码

<groups>
  <group id="ProAppModule_Group1" caption="Group 1" appearsOnAddInTab="true" keytip="G1">
    <button refID="ProAppModule_Button_RepairName" size="large" />
  </group>
</groups>
<controls>
  <button id="ProAppModule_Button_RepairName" caption="修复图层和表名称" className="Button_RepairName" loadOnClick="true" smallImage="pack://application:,,,/ArcGIS.Desktop.Resources;component/Images/GenericButtonBlue16.png" largeImage="pack://application:,,,/ArcGIS.Desktop.Resources;component/Images/GenericButtonBlue32.png">
    <tooltip heading="Tooltip Heading">Tooltip text<disabledText /></tooltip>
  </button>
</controls>

最后

以上就是沉默店员为你收集整理的ArcGIS Pro 加载项(2)——修复图层及独立表名称的全部内容,希望文章能够帮你解决ArcGIS Pro 加载项(2)——修复图层及独立表名称所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部