在地图添加选中要素

方法一:

 IFeatureClass pFeatureclass = pFeatureLayer.FeatureClass;
            IQueryFilter pQuery = new QueryFilterClass();
            pQuery.WhereClause = "OBJECTID=" + aaa+ "";
            IFeatureCursor cursor = pFeatureclass.Search(pQuery, true);
            IFeature pFeature = cursor.NextFeature();
            if (pFeature != null)
            {
                (M_hookHelper.Hook as IMapControlDefault).Map.SelectFeature((pFeatureLayer as ILayer), pFeature);
            }
            this.M_hookHelper.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeoSelection, null, M_hookHelper.ActiveView.Extent);

 

方法二:

 if (listSelectObjectID == null)
{
      listSelectObjectID = new List<int>();
            }
            //清除选集
            pSelectionSet.RemoveList(pSelectionSet.Count, ref listSelectObjectID.ToArray()[0]);
            listSelectObjectID.Clear();
            listSelectObjectID.Add(OID);
            //先清除地图上所有选中要素,但目标图用来选中查询的图层选中图形不清除
            pSelectionSet.AddList(listSelectObjectID.Count, ref listSelectObjectID.ToArray()[0]);
            M_hookHelper.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeoSelection, null, M_hookHelper.ActiveView.Extent);
            this.M_hookHelper.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeoSelection, null, M_hookHelper.ActiveView.Extent);

posted @ 2018-12-11 16:51  天要下雨娘要嫁人  阅读(282)  评论(0编辑  收藏  举报