Exemplo n.º 1
0
        public int getSelectSetCount(SelectSet set)
        {
            int count = 0;
            //记录符合选择项的ids
            ObjectIDs oids = new ObjectIDs();
            ObjectID  oid  = new ObjectID();

            if (set != null)
            {
                //获取选择集列表
                List <SelectSetItem> lst = set.Get();

                foreach (SelectSetItem item in lst)
                {
                    count += item.IDList.Count;
                }
                if (lst == null || lst.Count == 0)
                {
                    return(count);
                }

                //获取图层信息
                MapLayer maplayer = lst[0].Layer;
                //获取图层对应的要素类的信息
                basClass = maplayer.GetData();

                //获取处于编辑状态第一个图层的要素ID列表
                List <long> idarr = lst[0].IDList;

                for (int i = 0; i < idarr.Count; i++)
                {
                    oid.Int64Val = idarr[i];
                    oids.Append(oid);
                }
                rcdSet = new RecordSet(basClass);
                //添加结果集
                rcdSet.AddSet(oids);
            }
            attCtrl.SetXCls((IVectorCls)basClass, rcdSet);
            return(count);
        }