_银子

提供更专注、更专心、更专业的服务
  首页  :: 联系 :: 订阅 订阅  :: 管理

修改mxd中矢量图层数据源

Posted on 2013-09-03 17:50  _银子  阅读(540)  评论(0)    收藏  举报

mxd重新指定数据源

       //打开原有Map地图
            IMapDocument pMapDocument = new MapDocumentClass();
            pMapDocument.Open(strMxdFile);
            if (pMapDocument.MapCount < 1) return;
            IMap pMap = pMapDocument.Map[0];

       //修改Map数据源
            ILayer pLayer = pMap.get_Layer(0);
            IFeatureLayer pFeatureLayer = pLayer as IFeatureLayer;
            pFeatureLayer.FeatureClass = ((IFeatureWorkspace)pOtherWorkspace).OpenFeatureClass(pFeatureLayer.Name);

            //保存新设置的Map地图
            IMxdContents pMxdC = pMap as IMxdContents;
            pMapDocument.ReplaceContents(pMxdC);

            strMxdFile = @"..Path\FileName.mxd";
            pMapDocument.SaveAs(strMxdFile);

两个数据源中需要是相同的图层,包括名称和数据一致。保存为mxd后配图信息不变。