#region IExtension Implementations public void Shutdown() { _editor = null; _editEvents = null; } public string Name { get { return "ValidateFeatures_Extension"; } } public void Startup(ref object initializationData) { if (initializationData != null && initializationData is IEditor) { _editor = (IEditor)initializationData; //Wire editor events. _editEvents = (IEditEvents_Event)_editor; _editEvents.OnStartEditing += EditEventsOnStartEditing; } } #endregion #region Editor event notification implementation private void EditEventsOnStartEditing() { if (_editor.EditWorkspace.Type == esriWorkspaceType.esriFileSystemWorkspace) { return; } _editEvents.OnChangeFeature += EditEventsOnChangeFeature; _editEvents.OnCreateFeature += EditEventsOnCreateFeature; } private void EditEventsOnChangeFeature(IObject obj) { Validate(obj as IFeature); } private void EditEventsOnCreateFeature(IObject obj) { Validate(obj as IFeature); } #endregion private void Validate(IFeature inFeature) { var fieldIndex = inFeature.Fields.FindField("DENYCHANGES"); if (fieldIndex < 0) { return; } if (inFeature.Value[fieldIndex].Equals("deny")) { _editor.AbortOperation(); } }
if it is an exception then you could add try/catch block to bypass the message.
Les membres connectés peuvent publier, suivre les mises à jour, et plus encore. Nouveau ici ? Inscrivez-vous gratuitement.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.