1 使用IWorkSpaceEdit
IFeatureLayer pFeatureLayer=ArcMap.Document.FocusMap.get_Layer(0) as IFeatureLayer;IDataset pDataset = pFeatureLayer.FeatureClass as IDataset;
IWorkspace pWs = pDataset.Workspace;
IWorkspaceEdit pWorkspaceEdit = pWs as IWorkspaceEdit;
pWorkspaceEdit.StartEditing(true);
pWorkspaceEdit.StartEditOperation();
//结束编辑
pWorkspaceEdit.StopEditOperation();
pWorkspaceEdit.StopEditing(true);2使用IEngineEditor
IEngineEditor pEngineEditor = new EngineEditorClass();
IDataset pDataset = pFeatureLayer.FeatureClass as IDataset;
IWorkspace pWs = pDataset.Workspace;
pEngineEditor.StartEditing(pWs, pMap);
IEngineEditLayers pEngineEditorLayers =pEngineEditor as IEngineEditLayers;
pEngineEditorLayers.SetTargetLayer(pFeatureLayer, 0);
IEngineEditTask pEngineEditTask = pEngineEditor.GetTaskByUniqueName("ControlToolsEditing_ModifyFeatureTask");
pEngineEditor.CurrentTask = pEngineEditTask;
pEngineEditor.StopEditing(true);
ICommand startCommand = new ControlsEditingStartCommand();
startCommand.OnCreate(this.Hook);
startCommand.OnClick();
GIS编辑方法总结

本文介绍了三种GIS编辑方法:使用IWorkSpaceEdit进行编辑操作;利用IEngineEditor进行更复杂的编辑任务;通过editor编辑器工具实现编辑流程自动化。每种方法都详细展示了如何开始和停止编辑过程。
2119

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



