/// <summary> /// Удалить объекты слоя /// </summary> /// <param name="table">Таблица</param> /// <param name="ids">Список ID объектов</param> /// <returns>Результат операции</returns> public bool DeleteObjects(CosM.CosmeticTableBaseM table, mvIntArray ids) { if (table != null && ids != null) { try { var layer = MapViewer.getLayer(table.Name); if (layer != null) { bool result = true; for (int i = 0; i < ids.count; i++) { try { mvVectorObject obj = layer.getObject(ids.getElem(i)); int id = Convert.ToInt32((string)obj.fieldValue(table.PkFieldName)); result &= table.DeleteObject(id); } catch { result = false; } } result &= layer.DeleteArray(ids); return(result); } } catch { } } return(false); }
/// <summary> /// Удаление текущего объекта /// </summary> public void DeleteObject(object parameter = null) { if (CanDeleteObject(parameter)) { mvIntArray ids = new mvIntArray(); ids.count = SelectedItems.Count; for (int i = 0; i < SelectedItems.Count; i++) { DataRow dr = SelectedItems[i].Row; ids.setElem(i, Convert.ToInt32(dr["id"])); } _mvLayer.DeleteArray(ids); _mvLayer.RemoveDeletedObjects(); _axMapLib.mapRepaint(); Reload(); } }