在文本框输入一个城市,在地图上查找,当找到后让mapcontrol自动跳转到地图上该点。
IQueryFilter filter = new QueryFilterClass(); filter.WhereClause = " NAME='"+城市名称+"'"; IFeatrueSel.SelectFeatures(filter, esriSelectionResultEnum.esriSelectionResultNew, false); IFeatureCursor cursor = IFeatureLay.Search(filter, false); IFeature feat = cursor.NextFeature(); if (feat != null) { //先清除地图中被选中的要素 this.axMapControl1.Map.ClearSelection(); IGeometry zdGeo = feat.Shape; try { this.axMapControl1.ActiveView.ExtentStack.Do(zdGeo.Envelope); this.axMapControl1.ActiveView.Extent = zdGeo.Envelope; this.axMapControl1.ActiveView.Refresh(); this.axMapControl1.FlashShape(zdGeo, 2, 300, Type.Missing); } catch (Exception ex) { return; } } System.Runtime.InteropServices.Marshal.ReleaseComObject(cursor);
AE中将地图页面跳转到指定坐标点
Mappoint p=new Mappoint(); p.x=已知点X坐标; p.y=已知点Y坐标; mapControl1.Extent.CenterAt(p);
参考文章