public void DeleteGroup(object parameter) { try { if (SelectedCodeGroup != null) { using (var conn = new SQLiteConnection(Connection.ConnString)) { conn.Open(); // delete code group of codes using (var comm = new SQLiteCommand(conn)) { comm.CommandText = "SELECT rowid FROM code_lib_codes WHERE groupid='" + SelectedCodeGroup.RowId + "'"; using (var reader = comm.ExecuteReader()) { if (reader.HasRows) { using (var commdelcodes = new SQLiteCommand(conn)) { commdelcodes.CommandText = "DELETE FROM code_lib_codes WHERE groupid='" + SelectedCodeGroup.RowId + "'"; commdelcodes.ExecuteNonQuery(); } } } // delete code group and remove from list using (var commdelgroups = new SQLiteCommand(conn)) { commdelgroups.CommandText = "DELETE FROM code_lib_groups WHERE rowid='" + SelectedCodeGroup.RowId + "'"; foreach (var group in CodeGroups) { if (group.RowId == SelectedCodeGroup.RowId) { commdelgroups.ExecuteNonQuery(); CodeGroups.Remove(group); } } } } conn.Close(); } } } catch (Exception exp) { Debug.WriteLine(exp); } }