物探论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 475|回复: 0

MapXtreme2004数据绑定的例子

[复制链接]
发表于 2013-3-13 21:08:43 | 显示全部楼层 |阅读模式
数据绑定的例子
数据绑定的例子。当数据表中的值改变,Pennsylvania 州的颜色会改变。


private void button1_Click(object sender, System.EventArgs e)
{
Session.Current.Catalog.CloseAll();
Table USATab = USATab = Session.Current.Catalog.OpenTable(@"c:\program files\mapinfo\mapxtreme\6.0\samples\data\usa.tab");
FeatureLayer fl = new FeatureLayer(USATab);
mapControl1.Map.Layers.Add(fl);

System.Data.DataTable dt = new System.Data.DataTable("USStuff");
dt.Columns.Add("USState", typeof(System.String));
dt.Columns.Add("SomeIndValue", typeof(System.String));
dt.Rows.Add(new object[]{"NY", "Dem"});
dt.Rows.Add(new object[]{"PA", "Rep"});
dt.Rows.Add(new object[]{"VT", "Dem"});
dt.Rows.Add(new object[]{"OH", "Rep"});


TableInfoAdoNet tian = new TableInfoAdoNet("VoteRecord", dt);
Table USVote = Session.Current.Catalog.CreateTable(tian);
Columns cols = new Columns();
cols.Add(USVote.TableInfo.Columns["SomeIndValue"].Clone());

USATab.AddColumns(cols, BindType.DynamicCopy, USVote, "USState", Operator.Equal, "State");

MapInfo.Mapping.Thematics.IndividualValueTheme thm = new MapInfo.Mapping.Thematics.IndividualValueTheme(fl, "SomeIndValue", "StateVotingRecord");
fl.Modifiers.Append(thm);
timer1.Start() ;
}

private void button2_Click(object sender, System.EventArgs e)
{

}

private void timer1_Tick(object sender, System.EventArgs e)
{
FeatureLayer fl = mapControl1.Map.Layers[0] as FeatureLayer;
System.Data.DataTable dt = (Session.Current.Catalog.GetTable("VoteRecord").TableInfo as TableInfoAdoNet).DataTable;
dt.Rows[1][1] = dt.Rows[1][1].ToString()=="Rep"?"Dem":"Rep";

Session.Current.Catalog.GetTable("VoteRecord").Refresh();
fl.Table.Refresh();
fl.Invalidate();
}

回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|物探论坛 ( 鄂ICP备12002012号 微信号:iwutan )

GMT+8, 2024-5-13 11:28 , Processed in 0.061047 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表