From d2892f90765a44395a8c507b8add39d53c6f6d73 Mon Sep 17 00:00:00 2001 From: Michael Bucari-Tovo Date: Thu, 2 Sep 2021 11:11:40 -0600 Subject: [PATCH] Fix crash when checkbox checked via spacebar. --- LibationWinForms/Dialogs/RemoveBooksDialog.cs | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/LibationWinForms/Dialogs/RemoveBooksDialog.cs b/LibationWinForms/Dialogs/RemoveBooksDialog.cs index d7fb7c09..37e7bbb7 100644 --- a/LibationWinForms/Dialogs/RemoveBooksDialog.cs +++ b/LibationWinForms/Dialogs/RemoveBooksDialog.cs @@ -7,6 +7,7 @@ using System.Linq; using System.Windows.Forms; using ApplicationServices; using DataLayer; +using Dinah.Core.Threading; using Dinah.Core.DataBinding; using InternalUtilities; using LibationWinForms.Login; @@ -32,9 +33,8 @@ namespace LibationWinForms.Dialogs InitializeComponent(); _labelFormat = label1.Text; - _dataGridView.CellContentClick += (s, e) => _dataGridView.CommitEdit(DataGridViewDataErrorContexts.Commit); - _dataGridView.CellValueChanged += DataGridView1_CellValueChanged; - _dataGridView.BindingContextChanged += (s, e) => UpdateSelection(); + _dataGridView.CellContentClick +=(s,e) => _dataGridView.CommitEdit(DataGridViewDataErrorContexts.Commit); + _dataGridView.BindingContextChanged += _dataGridView_BindingContextChanged; var orderedGridEntries = _libraryBooks .Select(lb => new RemovableGridEntry(lb)) @@ -47,10 +47,10 @@ namespace LibationWinForms.Dialogs _dataGridView.Enabled = false; } - private void DataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e) + private void _dataGridView_BindingContextChanged(object sender, EventArgs e) { - if (e.ColumnIndex == 0) - UpdateSelection(); + _dataGridView.Sort(_dataGridView.Columns[0], ListSortDirection.Descending); + UpdateSelection(); } private async void RemoveBooksDialog_Shown(object sender, EventArgs e) @@ -124,7 +124,6 @@ namespace LibationWinForms.Dialogs } private void UpdateSelection() { - _dataGridView.Sort(_dataGridView.Columns[0], ListSortDirection.Descending); var selectedCount = SelectedCount; label1.Text = string.Format(_labelFormat, selectedCount, selectedCount != 1 ? "s" : string.Empty); btnRemoveBooks.Enabled = selectedCount > 0;