MapInfo 建立永久表

本文介绍了一个使用C#创建地图表的过程,包括定义表信息、添加不同类型的列(如索引整数列、样式列和特征几何列)、写入表格文件及在会话中创建并保存表。还展示了如何通过地图控件加载创建的表,并将当前会话保存到工作区文件。
 1
 2        private void createTableToolStripMenuItem_Click(object sender, EventArgs e)
 3        {
 4            TableInfoNative tiReader = new TableInfoNative("abc");
 5            tiReader.TablePath = "C:\\MapTable\\abc.tab";
 6            tiReader.Columns.Add(ColumnFactory.CreateIndexedIntColumn("readerID"));
 7            tiReader.Columns.Add(ColumnFactory.CreateStyleColumn());           
 8            tiReader.Columns.Add(ColumnFactory.CreateFeatureGeometryColumn(mapControl1.Map.GetDisplayCoordSys()));
 9            tiReader.WriteTabFile();          
10            try
11            {
12                if (File.Exists(tiReader.TablePath))
13                {
14                    File.Delete(tiReader.TablePath);
15                }

16                Table reader = Session.Current.Catalog.CreateTable(tiReader);
17                FeatureLayer flReader = new FeatureLayer(reader);
18                mapControl1.Map.Layers.Add(flReader);
19
20                //Save the session to a workspace file
21                WorkSpacePersistence wsp = new WorkSpacePersistence();
22                System.IO.File.SetAttributes("C:\\MapTable\\", System.IO.FileAttributes.Normal);
23                wsp.Save("abcd.mws");
24
25            }

26            catch (SqlException sqle)
27            { MessageBox.Show(sqle.ToString()); }
28                MessageBox.Show("create table successfully");           
29           
30        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值