用ArcGIS的时候,如果想要访问一个文件夹,需要先做文件夹的连接,这样处理的优点是让用户专注于必要的文件夹,但像重度的ArcGIS用户,文件夹有很多,而且天长日久很多文件夹已经移动或者删除了,ArcMap的连接就失效了。
这里给出一个AddIn的关键代码,可以自动删除的文件夹连接
var gxApp = ArcMap.ThisApplication as IGxApplication;
var selectedObject = gxApp.SelectedObject;
if (!(selectedObject is IGxObjectContainer)) return;
var objectContainer = selectedObject as IGxObjectContainer;
var enumGxObject = objectContainer.Children;
var gxObject = enumGxObject.Next();
while (gxObject != null)
{
MessageBox.Show(gxObject.FullName);
if (!Directory.Exists(gxObject.FullName))
{
objectContainer.DeleteChild(gxObject);
}
gxObject = enumGxObject.Next();
}