Expenses

This app provides the ability to record expenses against activities, and to categorize them. You can create, modify and delete activities and expenses, but the categories have to be created, using the browser, prior to deployment.

Download

When an Activity or Expense has been created/edited the Cancel Icon will be enabled Pressing the back arrow will save the changes; pressing the Cancel Button will discard them;

Notes on the Code

The platform needs to be set to x86 for the emulators; ARM for a device.

In App.xaml.cs you can see the delegate being passed in when ExpensesDS is created to allow the events to be fired on the UI thread.

dataStore_ = new ExpensesDS(async (Action x) => await current.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, new Windows.UI.Core.DispatchedHandler(x)));

In ExpensesPage.xaml.cs when an Expense is deleted, its association with the activity is explicity removed before it is deleted. This is only necessary so that the PropertyChanged event is fired.