ArcEngine C# 选择对象、取消选择、设置可选图层.docVIP

  • 114
  • 0
  • 约4.97千字
  • 约 11页
  • 2018-01-01 发布于河南
  • 举报

ArcEngine C# 选择对象、取消选择、设置可选图层.doc

ArcEngine C# 选择对象、取消选择、设置可选图层

ArcEngine C# 选择对象、取消选择、设置可选图层 //全局变量 public enum enumToolFlag { Select } IEnumFeature globalEnumFeature; // 选中要素集全局变量 private void btnSelect_Click(object sender, EventArgs e) //选择对象 { axMapControlMain.MousePointer= esriControlsMousePointer.esriPointerDefault; flag = enumToolFlag.Select; } 在axMapControl1_OnMouseDown中写如下代码: Switch (flag) { case enumToolFlag.Select: //选择元素 { //选择要素 IGeometry pGeometry = axMapControlMain.TrackRectangle(); IEnvelope pEnv; IActiveView pActiveView = axMapControlMain.ActiveView; //IMap pMap = axMapControlMain.Map; pEnv = pGeometry as IEnvelope; if (pEnv.IsEmpty == true) { ESRI.ArcGIS.Display.tagRECT r; r.bottom = e.y + 5; r.top = e.y - 5; r.left = e.x - 5; r.right = e.x + 5; pActiveView.ScreenDisplay.DisplayTransformation.TransformRect(pEnv, ref r, 4); pEnv.SpatialReference = pActiveView.FocusMap.SpatialReference; pGeometry = pEnv as IGeometry; } axMapControlMain.Map.ClearSelection(); axMapControlMain.Refresh(); axMapControlMain.Map.SelectByShape(pGeometry, null, false); axMapControlMain.Refresh(); //获取选中要素 IMap pMap = axMapControlMain.Map; globalEnumFeature = axMapControlMain.Map.FeatureSelection as IEnumFeature; globalEnumFeature.Reset(); } break; } 取消选择: private void btnClearSelect_Click(object sender, EventArgs e) //取消选择 { axMapControlMain.MousePointer= esriControlsMousePointer.esriPointerDefault; axMapControlMain.Map.ClearSelection(); axMapControlMain.Refresh(); } 设置可选图层: //全局变量中添加 string selectedlayerName; // 选择图层名 private void btnSetSelectLayer_Click(object sender, EventArgs e) { try {

文档评论(0)

1亿VIP精品文档

相关文档