1. 打开操作:

(1)首先需要引用ESRI.ArcGIS.SystemUI命名空间,即添加using ESRI.ArcGIS.SystemUI;语句。

(2)在代码中创建一个OpenFileDialog对象,设置相关属性。

(3)调用OpenFileDialog对象的ShowDialog()方法打开文件选择对话框。

(4)判断用户是否选择了文件,如果选择了,则获取文件路径并打开相应的地图文档。

示例代码:

private void OpenMapDocument() { //创建OpenFileDialog对象 OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Filter = "Map Documents (.mxd)|.mxd";//设置文件过滤器 openFileDialog.Multiselect = false;//禁止多选 openFileDialog.Title = "选择地图文档";//设置对话框标题

//打开文件选择对话框
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
    //获取文件路径并打开相应的地图文档
    string filePath = openFileDialog.FileName;
    IMxDocument mxDocument = axMapControl1.Document as IMxDocument;
    mxDocument.Open(filePath, "");
    axMapControl1.Refresh();
}

}

  1. 保存操作:

(1)首先需要引用ESRI.ArcGIS.SystemUI和ESRI.ArcGIS.Carto命名空间,即添加using ESRI.ArcGIS.SystemUI;和using ESRI.ArcGIS.Carto;语句。

(2)在代码中创建一个SaveFileDialog对象,设置相关属性。

(3)获取当前地图文档路径和名称,如果为空则弹出保存对话框,否则直接保存。

(4)判断用户是否选择了保存路径,如果选择了,则保存地图文档。

示例代码:

private void SaveMapDocument() { //创建SaveFileDialog对象 SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.Filter = "Map Documents (.mxd)|.mxd";//设置文件过滤器 saveFileDialog.Title = "保存地图文档";//设置对话框标题

//获取当前地图文档路径和名称
IMxDocument mxDocument = axMapControl1.Document as IMxDocument;
string filePath = mxDocument.DocumentFilename;

//如果为空则弹出保存对话框,否则直接保存
if (string.IsNullOrEmpty(filePath))
{
    //打开保存对话框
    if (saveFileDialog.ShowDialog() == DialogResult.OK)
    {
        //保存地图文档
        filePath = saveFileDialog.FileName;
        mxDocument.SaveAs(filePath);
        MessageBox.Show("地图文档保存成功!");
    }
}
else
{
    //保存地图文档
    mxDocument.Save();
    MessageBox.Show("地图文档保存成功!");
}
基于Visual Studio2012GIS二次开发的打开保存操作

原文地址: https://www.cveoy.top/t/topic/hwlT 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录