From 24a9a2b71e554713f7cc657636b08b565efb2480 Mon Sep 17 00:00:00 2001 From: BobdaFett Date: Thu, 23 Nov 2023 18:13:34 -0500 Subject: [PATCH] Fixed totaling of CoinCollection's value. --- PcgsInvUi/ViewModels/MainWindowViewModel.cs | 12 ++++++++---- PcgsInvUi/Views/MainWindow.axaml | 4 ++-- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/PcgsInvUi/ViewModels/MainWindowViewModel.cs b/PcgsInvUi/ViewModels/MainWindowViewModel.cs index 7de848e..af680ba 100644 --- a/PcgsInvUi/ViewModels/MainWindowViewModel.cs +++ b/PcgsInvUi/ViewModels/MainWindowViewModel.cs @@ -115,11 +115,15 @@ public class MainWindowViewModel : ViewModelBase { // TODO Clear the text boxes. }); - - // Change TotalValue anytime SelectedCoin.TotalPrice changes. - // TODO: fix this. Should update when a coin within the collection is changed. - // Possible null deref - how do you remove this? + + // Update TotalValue anytime a coin's quantity changes. + // Possible null reference is currently ignored - SelectedCoin will never be null. this.WhenAnyValue(x => x.SelectedCoin.TotalPrice) .Subscribe(_ => TotalValue = ConnectedCoinDatabase.Collection.Sum(x => x.TotalPrice)); + + // Update TotalValue anytime a coin is added or removed. + ConnectedCoinDatabase.Collection.CollectionChanged += (sender, args) => { + TotalValue = ConnectedCoinDatabase.Collection.Sum(x => x.TotalPrice); + }; } } diff --git a/PcgsInvUi/Views/MainWindow.axaml b/PcgsInvUi/Views/MainWindow.axaml index d01a9ab..517fede 100644 --- a/PcgsInvUi/Views/MainWindow.axaml +++ b/PcgsInvUi/Views/MainWindow.axaml @@ -48,7 +48,7 @@ Binding="{Binding Designation}" IsReadOnly="True" /> - \ No newline at end of file +