首页 / 浏览问题 / 组件GIS / 问题详情
帮助手册中的代码该如何修改?
13EXP 2019年06月18日

你好,请问帮助手册中的这段代码,我该修改哪些地方才能打开储存在E盘上的我的文件?

//******打开工作空间******
private void toolStripOpen_Click(object sender, EventArgs e)
{
//设置公用打开对话框
openFileDialog1.Filter = "SuperMap 工作空间文件(*.smwu)|*.smwu";
//判断打开的结果,如果打开就执行下列操作
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
//避免连续打开工作空间导致程序异常
mapControl1.Map.Close();
workspace1.Close();
mapControl1.Map.Refresh();
//定义打开工作空间文件名
String fileName = openFileDialog1.FileName;
//打开工作空间文件
WorkspaceConnectionInfo connectionInfo = new
WorkspaceConnectionInfo(fileName);
//打开工作空间
workspace1.Open(connectionInfo);
//建立 MapControl 与 Workspace 的连接
mapControl1.Map.Workspace = workspace1;
//判断工作空间中是否有地图
if (workspace1.Maps.Count == 0)

{
MessageBox.Show("当前工作空间中不存在地图!");
return;
}
//通过名称打开工作空间中的地图
mapControl1.Map.Open("世界地图_Day");
//刷新地图窗口
mapControl1.Map.Refresh();
}
}


 


 

1个回答

您好!这些代码的意思是您打开一个您自己设置的地址下的工作空间的同时,打开该工作空间里名为"世界地图_Day“的地图。您如果想打开自己的工作空间,就用上面的代码就可以实现,只需要将mapControl1.Map.Open("世界地图_Day");mapControl1.Map.Refresh();这两行代码注释即可。

如果您想在打开工作空间的同时打开该工作空间里的地图,就只需将代码里的("世界地图_Day");改为("该工作空间下保存的地图名");即可。
3,352EXP 2019年06月18日

你好,我把“该工作空间下保存的地图名”改成“world”请问为什么还是打不开,刚开始学还不是很懂,希望能帮帮我crying

请确保您打开的这个名为World的地图在您打开的工作空间里面是否有?,其次是文件型工作空间只能在一处打开,不能同时在多个地方打开。
这个world是超图安装包SampleData文件夹下自带的,我用idesktop打开看过里面是有内容的,运行后还是会报这个错,请问是怎么回事呢?

1.先将打开地图那两行代码注释掉,看工作空间能否打开?

2.如果能打开再看地图名是不是就是该工作空间里的地图名。

3.如果不能打开先看工作空间是否存在占用的情况。

如果还没有解决请将teamviwer远程工具的ID和密码发我邮箱huyannan@supermap.com.cn

谢谢,我弄明白了。

...