内容摘要
ArcGIS Engine提供了保存Mxd文件的类MapDoment。但在具体保存MXD
文件过程中有下面几种情况:
1 直接使用IMapDocument接口的Open方法来打开MXD文件,编辑过后进行保存。
2 使用Engine中带的OpenDocument方法来打开MXD文件,然后编辑过之后要进行保存。
3 使用自己写的添加数据的工具直接添加数据,也就是说一开始没有MXD文件,在编辑完之后需要把当前的地图保存为一个MXD文件。 过程描述 解决方法:
首先这三种情况都可以使用Engine中自带的SaveDoument的工具进行保存
1 这种情况比较简单,直接使用IMapDocument的save或者saveas的方法来进行保存就可以,可以在帮助中查到例子。
2 这种情况可使用下面的代码(c#语言)进行保存,
IMxdContents pMxdC;
pMxdC = axMapControl1.Map as IMxdContents ;
IMapDocument pMapDocument = new MapDocumentClass();
pMapDocument.Open (axMapControl1.DocumentFilename,"");
IActiveView pActiveView = axMapControl1.Map as IActiveView ;
pMapDocument.ReplaceContents (pMxdC);
pMapDocument.SaveAs ("d:/aa2.mxd",true,true);
3 这种情况使用的代码(c#语言)稍微有点不同:
IMxdContents pMxdC;
pMxdC = axMapControl1.Map as IMxdContents ;
IMapDocument pMapDocument = new MapDocumentClass ();
pMapDocument.New ("d:/aa3.mxd");
IActiveView pActiveView = axMapControl1.Map as IActiveView ;
pMapDocument.ReplaceContents (pMxdC);
pMapDocument.Save (true,true);