用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();
}