使用ArcMap Add-in 创建交互窗体

在ArcMap使用过程中我们常常想开发一些小功能插件,在此就要用到add-in插件的开发方法,创建add-in插件的步骤就不细述了。在此说明如何在ArcMap中添加自定义交互窗体(之所以将这个是因为网上找到的教程中好像没有讲一些细枝末节的东西,在此讲明一下)

首先创建一个DockableWindow类型的程序集:打开VS,右击解决方案,选择“添加”,选择新建项,在ArcGIS模板中选择



然后选择Add-in插件类型,在此选择Dockablewindow


建成完毕后在设计窗口添加必要的控件,然后右键点击程序集,选择“生成”,生成dll,

新建另一个add-in程序集,在此以Button类型为例,在它的Config.Designer.cs文件中相应位置做如下修改:


其中a是上一个DockableWindow程序集的名字

b为该程序集Config.esriaddinx文件中记录的DockableWindow id。

然后在Button程序集的引用中添加刚刚生成的DockableWindow的dll,编写相应的DockableWindow弹出代码如下,右键点击Button程序集,选择“生成”或是“重新生成”,若重新生成出现问题,则将所有ESRI控件改成“复制到本地--true”。

参考代码(OnClick事件中):  IDockableWindowManager pDocWinMgr = ArcMap.DockableWindowManager;
                UID uid = new UIDClass();
                uid.Value = ThisAddIn.IDs.DockableWindow1;
                IDockableWindow pTOC = pDocWinMgr.GetDockableWindow(uid);
                if (pTOC.IsVisible())
                    pTOC.Dock(esriDockFlags.esriDockRight);


在ArcMap中使用前要先安装这两个程序集生成的add-in插件,,DockableWindow的插件在程序集的Debug文件夹下点击安装,其在ArcMap中不可见,只有在运行的时候才会出现,Button的插件在Customize中添加安装即可

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值