概述
使用模型构建器的过程中,因为模型中使用了行内变量,并且输出结果使用了添加至显示,结果在内容面板中自动添加上来的图层和独立表的名称都是带了 %行内变量% 的名称。移除之后从目录中重新添加会正常显示原始的名称,但是觉得点选之后添加比较麻烦,所以想到使用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)——修复图层及独立表名称所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复