选择集选中删除某个类别的对象

0 投票
使用产品:iobject.net 9D(2019)sp1  操作系统:win10X64

我现在是点线面三个图层,三个图层用selset2方法批量选择时,默认会把选择的对象相应图层变为可编辑,这样我只想删除面对象时就会顺带把点也删除掉,在select2前后再加上把点图层转为不可编辑也没有用,所以我想问一下怎么实现选了以后不删除其他图层的对象。我现在的删除方法是删除选择集,我想问一下有没有其他可以实现这种的删除方法。

            Form1.m_pointLayer.IsEditable = false;
            //m_regionLayer.IsEditable=true;
            mapControl2.Action = SuperMap.UI.Action.Select2;
            //获取选择集
            Selection[] selection = mapControl2.Map.FindSelection(true);
            //判断选择集是否为空
            if (selection == null || selection.Length == 0)
            {
                MessageBox.Show("请选择要进行分析的对象");
                return;
            }
            //将选择集转换为记录集
            Recordset recordSetSelection = selection[0].ToRecordset();
            recordSetSelection.DeleteAll();//删除选择集的对象。
            recordSetSelection.Close();
            mapControl2.Map.Refresh();
8月 15, 2019 分类:  161次浏览 | 用户: amstring 初出茅庐 (58 分)

1个回答

0 投票
 
已采纳
您好,通过接口mapcontrol.delete实现,这个接口只删除开启可编辑状态的图层的对象
8月 15, 2019 用户: 邬袁凯 名扬四海 (2,432 分)
采纳于 8月 16, 2019 用户:amstring
...