SuperMap Objects.NET C#组件开发之创建地图并添加基本功能

本文档详细介绍了如何使用SuperMapObjects在C#环境下创建一个地图应用,包括创建工程、添加控件、加载地图、地图浏览、属性查询以及属性到地图的查询等功能。通过实例代码展示了地图的基本操作和查询方法。

一、创建新工程

1.在本地磁盘下自定义创建一个文件夹,如 C:\MyProject。
2.下载数据文件 Workspace_Map.zip.(包含World.sdb和World.sdd)到工作目录 C:\MyProject 中。
3.启动 Microsoft Visual Studio .NET。 (这里使用的Visual Studio2008)
4.在文件夹 C:\Myproject 下新建 C# 工程的一个 Windows Application,命名为:MyFirstSuperMap。

在这里插入图片描述

二、将4个SuperMap控件添加到Visual Studio ToolBox(工具箱):

1.在 ToolBox(工具箱)上单击鼠标右键,点击"Add Tab"(添加选项卡),键入 SuperMap 作为名称。
2.在 ToolBox(工具箱)上单击鼠标右键,点击"Choose Items…"(选择项),出现如下对话框:
在这里插入图片描述

3.将"SuperMap Legend Control(因为版本不同,有些是xxx控件不是xxxControl,但它们作用是一样的)"、“SuperMap Control”、“SuperWorkspace Control”、“SuperWorkspace Manager Control”添加Visual Studio ToolBox(工具箱)。这里以选中“SuperMap Control” 和 “SuperWorkspace Control”为例,点击确定。ToolBox 中即出现下图所示两个控件:
在这里插入图片描述

三、打开地图和添加图层

1.将窗体的NAME属性命名为 frmMain,
在这里插入图片描述

Text命名为 “SuperMap Objects 开发入门教程”,
在这里插入图片描述

将Visual Studio ToolBox(工具箱)里的 SuperWorkSpace Control 拖拽/点击添加到窗体中并Text命名为 SuperWorkspace1,将 SuperMap Control 添加到窗体中并Text命名为 SuperMap1,如下图所示:
在这里插入图片描述

2.在属性中“frmMain”下的“Load”添加“frmMain_Load”,
在这里插入图片描述

点击“frmMain_Load”,输入如下代码:

    private void frmMain_Load(object sender, System.EventArgs e)
		{
   
   
			SuperMap1.Connect(SuperWorkspace1.CtlHandle); //建立地图窗口与工作空间的联系,用于显示数据
			String strAlias; //数据源别名                      
			SuperMapLib.seEngineType nEngineType; //数据源引擎类型
			String strDataSourceName; //数据源所在路径
			SuperMapLib.soDataSource objDataSource; //数据源对象,指向打开的数据源
			bool bReadOnly; //数据源是否只读打开
			bool bAddToHead; //是否将数据集加到地图最上一层显示
			                                                                  
			int i; //数据集索引                                           
			strAlias = "MyDataSource"; //别名可任意,但建议取数据源文件名相同的名称,便于区分
			nEngineType = SuperMapLib.seEngineType.sceSDBPlus; //可打开不同引擎的数据源,此处打开文件型 SDBPlus                       
			strDataSourceName = "C:\\MyProject\\World.sdb"; //数据源所在路径,也可以是相对路径
			                      
			bReadOnly = false; //非只读打开
			                                                                                             
			//打开数据源                                                    
			objDataSource = SuperWorkspace1.OpenDataSource(strDataSourceName, strAlias, nEngineType, bReadOnly);               
			if (objDataSource == null)                           
			{
   
                                                      
				MessageBox.Show( "请将数据源文件(world.sdb,world.sdd)下载到 C:\\MyProject\\World.sdb 目录,再运行程序","打开数据源失败"); 
				return;                                              
			}                                                       
			else                                                                    
			{
   
                                                                          
				//把数据源中的所有图层加入到 SuperMap 中
				for(i=1;i<=objDataSource.Datasets.Count;i++
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值