01gis_zch
路人甲
路人甲
  • 注册日期2004-07-16
  • 发帖数9
  • QQ
  • 铜币177枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1918回复:5

[原创]c#实现动态加载图层

楼主#
更多 发布于:2004-10-01 22:12
<P>using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;</P>
<P>namespace Mo
{
 /// <summary>
 /// Form1 的摘要说明。
 /// </summary>
 public class FormMain : System.Windows.Forms.Form
 {</P>
<P>   private AxMapObjects2.AxMap axMo_Main;</P>
<P>   private System.Windows.Forms.OpenFileDialog mo_OpenShp;
   private System.ComponentModel.IContainer components;
   </P>
<P>/// <summary>
  /// 应用程序的主入口点。
  /// </summary>
  [STAThread]
  static void Main()
  {
   Application.Run(new FormMain());
  }</P>
<P>实现函数如下,只须调用就可以实现</P>
<P>private void AddLayer()
  {
   string fileName,strDir,strFileExt;
   int pos,i=-1;
   MapObjects2.DataConnection dc=new MapObjects2.DataConnectionClass();//定义连接
   MapObjects2.GeoDataset gds=null;//定义图层数据
   MapObjects2.MapLayer layer=new MapObjects2.MapLayerClass();//定义图层
</P>
<P>   if(mo_OpenShp.ShowDialog()==DialogResult.OK)
   {
    //连接图层
    fileName=mo_OpenShp.FileName;
    pos=fileName.LastIndexOf("\\");
    strDir=fileName.Substring(0,pos);
    dc.Database=strDir;
    if(dc.Connect()==false)
     MessageBox.Show("recover");
                
    //加入图层数据
    pos=fileName.LastIndexOf("\\");
    strFileExt=fileName.Substring(pos+1,fileName.Length-pos-1);
    gds=dc.FindGeoDataset(strFileExt);
    if(gds==null)
     MessageBox.Show("recover");
    layer.GeoDataset=gds;//加入图层数据
  
                  
    //添加图层
    axMo_Main.Layers.Add(layer);
  
   }
  }</P>
<P>}</P>
喜欢0 评分0
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15947
  • QQ554730525
  • 铜币25339枚
  • 威望15364点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
1楼#
发布于:2004-10-02 20:27
<img src="images/post/smile/dvbbs/em01.gif" />
举报 回复(0) 喜欢(0)     评分
lzqcool
路人甲
路人甲
  • 注册日期2005-05-11
  • 发帖数10
  • QQ
  • 铜币117枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2006-07-06 16:34
<P>支持</P>
举报 回复(0) 喜欢(0)     评分
xinbo
路人甲
路人甲
  • 注册日期2006-02-28
  • 发帖数29
  • QQ
  • 铜币192枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2006-07-20 10:23
<img src="images/post/smile/dvbbs/em01.gif" />
举报 回复(0) 喜欢(0)     评分
hahaaluo
路人甲
路人甲
  • 注册日期2006-08-05
  • 发帖数146
  • QQ
  • 铜币591枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2006-08-07 15:33
<P>哈哈  好东西  帮了我一大忙  谢谢`~~~~~~ </P>
<P>支持!!!!!!!!!!!!1</P>
举报 回复(0) 喜欢(0)     评分
berush
路人甲
路人甲
  • 注册日期2003-12-01
  • 发帖数158
  • QQ
  • 铜币622枚
  • 威望0点
  • 贡献值0点
  • 银元0个
5楼#
发布于:2006-08-28 15:16
<P>不就是简单地加图层嘛.</P>
<P>动态加载图层的标题咋一看还觉得很高深...</P>
举报 回复(0) 喜欢(0)     评分
游客

返回顶部