private void deleteContractorButton_Click(object sender, EventArgs e) { Contractor selectedContractor = contractorsTable.SelectedRows[0].DataBoundItem as Contractor; if (NotificationHelper.ShowYesNoQuestion(string.Format("Ви впевнені, що хочете видалити інформацію про \"{0}\"?", selectedContractor.ShortName))) { using (TenderContext tc = new TenderContext()) { bool entityHasReferences = tc.Contracts.Where(p => p.ContractorId == selectedContractor.Id).Any(); if (entityHasReferences) { NotificationHelper.ShowError(string.Format("Видалення інформації про контрагента \"{0}\" неможливе, оскільки під нього є зареєстровані договори!", selectedContractor.ShortName)); return; } else { tc.Contractors.Attach(selectedContractor); tc.Contractors.Remove(selectedContractor); tc.SaveChanges(); NotificationHelper.ShowInfo("Контрагент успішно видалений!"); if (!reloadContractorsListWorker.IsBusy) { ToggleLoadAnimation(); reloadContractorsListWorker.RunWorkerAsync(); wasDbUpdated = true; } } } } }
public static void DeleteFileRecord(DataGridView table, IList <UploadedFile> filesList, ICollection <UploadedFile> deletingFilesList) { UploadedFile selectedFile = table.SelectedRows[0].DataBoundItem as UploadedFile; int indexOfSelectedFile = table.SelectedRows[0].Index; if (FileManager.WasFileUploaded(selectedFile)) { if (NotificationHelper.ShowYesNoQuestion("Ви впевнені що хочете видалити вказаний файл?")) { deletingFilesList.Add(selectedFile); } else { return; } } filesList.RemoveAt(indexOfSelectedFile); RecalculateRowNumberColumn(table, 0, indexOfSelectedFile); table.Refresh(); }