1、前言
在ArcEngine中,删除要素的方法有很多,你可以使用IFeatureCursor或ITable查询出部分要素然后依次删除。但这两个接口只能针对单个图层的要素进行删除,而在编辑状态下,我们可能一次选中了多个图层下的多个要素,这时候就得使用IFeature接口的Delete方法进行操作,下面给出实现代码。
2、删除要素
2.1、主界面代码
using ESRI.ArcGIS.Controls;
using ESRI.ArcGIS.SystemUI;
using System;
using System.Windows.Forms;
using WindowsFormsApplication1.Command;
namespace WindowsFormsApplication1
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
axMapControl1.LoadMxFile(@"C:\Users\DSF\Desktop\data\无标题.mxd");
axMapControl1.Extent = axMapControl1.FullExtent;
btnStartEditing.Enabled = true;
btnStopEditing.Enabled = false;
btnSelect.Enabled = false;
btnDelete.Enabled = false;
}
// 开始编辑
private void btnStartEditing_Click(object sender, EventArgs e)
{
ICommand command = new ControlsEditingStartCommand();
command.OnCreate(axMapControl1.Object);
command.OnClick();
btnStartEditing.Enabled = false;
btnStopEditing.Enabled = true;
btnSelect.Enabled = true;
btnDelete.Enabled = true;
}
// 结束编辑
private void btnStopEditing_Click(object sender, EventArgs e)
{
ICommand saveCommand = new ControlsEd

本文介绍了如何在ArcGIS环境中利用IFeature接口的Delete方法,实现一次选择多个图层下的要素进行删除,通过实例代码展示了从界面触发到实际删除操作的流程。
2万+

被折叠的 条评论
为什么被折叠?



