四、标注AutoLabel
好日子一去不复返了,原来总觉得Mapx很多地方设计得不是很自然,比如,feature和具体的feature之间的某些属性的关系,有时令人迷惑。但是,用了Mapxtreme,才感觉到Mapx的方便。真不知MapInfo怎么想的!原来的标注非常简单,layer有个autolabel属性,一设就可以了。现在呢:
//James.Liu的代码
Table table = Session.Current.Catalog.OpenTable("usa.tab"
;
Map map = Session.Current.MapFactory.CreateEmptyMap(new Size(300, 300));
LabelLayer layer = new LabelLayer();
map.Layers.Add(layer);
LabelSource source = new LabelSource(table);
source.DefaultLabelProperties.Caption = "State_Name";
layer.Sources.Append(source);
//我的
LabelLayer layer = new LabelLayer();
MapControl1.Map.Layers.Add(layer);
LabelSource source = new LabelSource(MapInfo.Engine.Session.Current.Catalog.GetTable("地名"
);
source.DefaultLabelProperties.Caption = "f_name";
//标注用到的那个字段名称
layer.Sources.Append(source);
看Layer.Sources的架势,好像可以共用一个LabelLayer,试试,的确可以