From 8386da5ec6f1bb0082825deaaf40e8fb5780e2ce Mon Sep 17 00:00:00 2001 From: Michael Bucari-Tovo Date: Fri, 20 Aug 2021 14:56:52 -0600 Subject: [PATCH] Make gridview update the row after details changed. --- LibationWinForms/GridEntry.cs | 1 + LibationWinForms/ProductsGrid.cs | 9 +++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/LibationWinForms/GridEntry.cs b/LibationWinForms/GridEntry.cs index 857469c6..35f08030 100644 --- a/LibationWinForms/GridEntry.cs +++ b/LibationWinForms/GridEntry.cs @@ -60,6 +60,7 @@ namespace LibationWinForms //DisplayTags and Liberate properties are live. } + public void NotifyChanged() => NotifyPropertyChanged(nameof(GridEntry)); private void PictureStorage_PictureCached(object sender, FileManager.PictureCachedEventArgs e) { diff --git a/LibationWinForms/ProductsGrid.cs b/LibationWinForms/ProductsGrid.cs index 1aea5520..246c97c8 100644 --- a/LibationWinForms/ProductsGrid.cs +++ b/LibationWinForms/ProductsGrid.cs @@ -67,7 +67,7 @@ namespace LibationWinForms await Liberate_Click(liveGridEntry); break; case nameof(liveGridEntry.DisplayTags): - Details_Click(liveGridEntry.LibraryBook); + Details_Click(liveGridEntry); break; } } @@ -89,18 +89,19 @@ namespace LibationWinForms await BookLiberation.ProcessorAutomationController.BackupSingleBookAsync(libraryBook, (_, __) => RefreshRow(libraryBook.Book.AudibleProductId)); } - private void Details_Click(LibraryBook libraryBook) + private void Details_Click(GridEntry liveGridEntry) { - var bookDetailsForm = new BookDetailsDialog(libraryBook); + var bookDetailsForm = new BookDetailsDialog(liveGridEntry.LibraryBook); if (bookDetailsForm.ShowDialog() != DialogResult.OK) return; - var qtyChanges = LibraryCommands.UpdateUserDefinedItem(libraryBook.Book, bookDetailsForm.NewTags, bookDetailsForm.BookLiberatedStatus, bookDetailsForm.PdfLiberatedStatus); + var qtyChanges = LibraryCommands.UpdateUserDefinedItem(liveGridEntry.LibraryBook.Book, bookDetailsForm.NewTags, bookDetailsForm.BookLiberatedStatus, bookDetailsForm.PdfLiberatedStatus); if (qtyChanges == 0) return; //Re-apply filters Filter(); + liveGridEntry.NotifyChanged(); } #endregion