// Действия при закрытии книжки private void OnBookClosing(object sender, EventArgs e) { // Очищаем текст richTextBox.Text = ""; // Деактивируем кнопки управления книжкой addBookmarkMenuItem.Enabled = false; bookmarksMenuItem.Enabled = false; nextPageMenuItem.Enabled = false; previousPageMenuItem.Enabled = false; // Сохраняем сведения о книжке в хранилище Book oldBook = sender as Book; if (Storage.AddBook(oldBook.BookRecord)) { Storage.DeleteBook(oldBook.BookRecord); } }
// Диалог удаления книжки private void OnDelete(object sender, EventArgs e) { bool isRemote = IsRemoteSelectedBook; bool isLocal = IsLocalSelectedBook; // Если удаляемая книга находится на сервере, полылаем на сервер запрос на удаление if (isRemote) { if (MessageBox.Show("Do you want to delete the book from your remote library?", "Delete book", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { int id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells[5].Value); RemoteBooks.Remove(new BookInfo() { Id = id }); DeleteRemoteBook(id); isRemote = false; } } // И удаляем ее локально if (isLocal) { if (MessageBox.Show("Do you want to delete the book from your local library?", "Delete book", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { Storage.DeleteBook(SelectedBook); isLocal = false; } } // Удаляем книжку из таблицы if (!(isLocal || isRemote)) { dataGridView.Rows.Remove(dataGridView.SelectedRows[0]); } else { UpdateCheckBox(isLocal, isRemote); } }