免费视频|新人指南|投诉删帖|广告合作|地信网APP下载

查看: 2237|回复: 4
收起左侧

[求助] AE开发中怎样加载同时加载多个SHP文件到MAP窗口

[复制链接]

6

主题

4万

铜板

4

好友

传奇会员

Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

积分
44222
发表于 2014-6-23 16:57 | 显示全部楼层 |阅读模式
这个是我写的SHP文件加载,在对话框中可以多选SHP文件,但是加载到MAP窗口中只有一个,怎样把多选的SHP点线面文件都一次性加载进去?    希望有心人指导,最好有源码。谢谢!

try
            {
                OpenFileDialog openFileDialog = new OpenFileDialog();
                openFileDialog.Multiselect = true;       //能同时选择对话框里面的多个文件
                openFileDialog.Title = "打开地图文档!";
                openFileDialog.Filter = "map document(*.shp)|*.shp";
                openFileDialog.ShowDialog();
                string filePath = openFileDialog.FileName;
                FileInfo fileInfo = new FileInfo(filePath);
                string path = filePath.Substring(0, filePath.Length - fileInfo.Name.Length);

                MapCtrl.AddShapeFile(path, fileInfo.Name);
            }
            catch (Exception a)
            {
                MessageBox.Show("加载图层失败!" + e.ToString());
            }

1

主题

9万

铜板

129

好友

地信院士

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

积分
2316
发表于 2014-6-23 21:29 | 显示全部楼层
本帖最后由 hh520 于 2014-6-23 21:33 编辑

openfiledialog1.Multiselect=true;//允许同时选择多个文件
for(int i=0;i<openfiledialog1.FileNames.Length;i++)
{
        openfiledialog1.FileNames.ToString();//取得文件路径,一直加载这个不就行了?没实际测试。。
}
回复 支持 反对

使用道具 举报

6

主题

4万

铜板

4

好友

传奇会员

Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

积分
44222
 楼主| 发表于 2014-6-24 09:34 | 显示全部楼层
hh520 发表于 2014-6-23 21:29
openfiledialog1.Multiselect=true;//允许同时选择多个文件
for(int i=0;i

还是不行啊,我加载五个SHP文件,这个方法可以加载5个,但是5个都是同一个点文件。其它的线和面没加进去!
回复 支持 反对

使用道具 举报

1

主题

9万

铜板

129

好友

地信院士

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

积分
2316
发表于 2014-6-24 10:18 | 显示全部楼层
yinchen 发表于 2014-6-24 09:34
还是不行啊,我加载五个SHP文件,这个方法可以加载5个,但是5个都是同一个点文件。其它的线和面没加进去 ...

openfiledialog1.FileNames【i】.ToString();
有个i,被过滤掉了
回复 支持 反对

使用道具 举报

6

主题

4万

铜板

4

好友

传奇会员

Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

积分
44222
 楼主| 发表于 2014-6-24 10:27 | 显示全部楼层
hh520 发表于 2014-6-24 10:18
openfiledialog1.FileNames【i】.ToString();
有个i,被过滤掉了

//   是这样吗?怎么加【i】和没加是一样的?   大神帮我彻底解决下{:soso_e115:}
try
            {
                OpenFileDialog openFileDialog = new OpenFileDialog();
                openFileDialog.Multiselect = true;       //能同时选择对话框里面的多个文件
                openFileDialog.Title = "打开地图文档!";
                openFileDialog.Filter = "map document(*.shp)|*.shp";
                openFileDialog.ShowDialog();
                string filePath = openFileDialog.FileName;
                FileInfo fileInfo = new FileInfo(filePath);
                string path = filePath.Substring(0, filePath.Length - fileInfo.Name.Length);
                for (int i = 0; i < openFileDialog.FileNames.Length; i++)
                {
                    openFileDialog.FileNames.ToString();
                    MapCtrl.AddShapeFile(path, fileInfo.Name);
                }
              
            }
            catch (Exception a)
            {
                MessageBox.Show("加载图层失败!" + e.ToString());
            }
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在线客服
快速回复 返回顶部 返回列表