zoukankan      html  css  js  c++  java
  • 应用MapXtreme2004开发GIS代码(C#) 搜索TAB表中的元素

    A:
    MapXtreme2004代码 读取TAB表中的元素
    例如,用记事本打开要访问的TAB文件“农安.tab”,可以看到下面内容:
    !table
    !version 300
    !charset WindowsSimpChinese
    Definition Table
    Type NATIVE Charset "WindowsSimpChinese"
    Fields 2
       地理码 Char (10) Index 1 ;
    名称 Char (10) ;
    下面我们就来读取该表的所有“名称”元素。并将其加入到DropDownList控件中。

    private static string _findLayerName = "农安";
    private static string _findColumnName = "名称";
    MapInfo.Data.Table table=MapInfo.Engine.Session.Current.Catalog.GetTable(_findLayerName);
    if(table!=null)
    {
        MIDataReader tr;
        MIConnection con=new MIConnection();
        MICommand tc=con.CreateCommand();
        tc.CommandText="select "+_findColumnName+" from "+_findLayerName;
        con.Open();
        tr=tc.ExecuteReader();
        while (tr.Read())
        {
            DropDownList1.Items.Add(tr.GetString(0));
        }
        tc.Cancel();
        tc.Dispose();
        tr.Close();
        con.Close();
    }

    B:
    应用MapXtreme2004开发GIS代码(C#) 搜索TAB表中的元素
    注:本贴跟上面帖子“MapXtreme2004代码 读取TAB表中的元素”

    private void FindYuansu()
    {
        Find find = null;
        try
        {
            MapInfo.Mapping.Map map = null;
            //获取地图
            if (MapInfo.Engine.Session.Current.MapFactory.Count == 0 ||
                 (map = MapInfo.Engine.Session.Current.MapFactory[0]) == null)
            {
                 return;
            }
            //开始搜索
            MapInfo.Mapping.FeatureLayer findLayer = (MapInfo.Mapping.FeatureLayer) map.Layers[_findLayerName];
            find = new Find(findLayer.Table, findLayer.Table.TableInfo.Columns[_findColumnName]);
            FindResult result = find.Search(DropDownList1.SelectedItem.Text);
            if (result.ExactMatch)
            {
                 //重新设置地图
                 map.Center = new DPoint(result.FoundPoint.X, result.FoundPoint.Y);
                 MapInfo.Geometry.Distance d = new MapInfo.Geometry.Distance(30, map.Zoom.Unit);
                 map.Zoom = d;
            }
            else
            {
                 Response.Write("没有搜索到!");
            }
            find.Dispose();
        }
        catch (Exception)
        {
            if (find != null) find.Dispose();
        }
    }

  • 相关阅读:
    分页
    hibernate 集合查询
    springmvc <mvc:default-servlet-handler/> & <mvc:annotation-driven>
    An owner of this repository has limited the ability to open a pull request to users that are collaborators on this repository.
    git 本地提交代码到 github 远程库,没有弹框 github login
    小鸡饲料任务,线下扫码付款收饲料地址
    小鸡饲料任务,蚂蚁庄园养鸡线下扫码付款收饲料地址,蚂蚁庄园养鸡线下扫码付款0.01元收饲料地址
    支付宝蚂蚁庄园线下支付链接,支付宝蚂蚁庄园线下支付地址
    kvm虚拟化
    Error Code: 1030. Got error -1 from storage engine
  • 原文地址:https://www.cnblogs.com/googlegis/p/2978968.html
Copyright © 2011-2022 走看看