private async void CashTransactionsGrid_OnCellEditEnding(object sender, DataGridCellEditEndingEventArgs e) { //here we set the trade selected in the picker popup if ((string)e.Column.Header == "Trade") { if (e.EditAction == DataGridEditAction.Commit) { var ct = (CashTransaction)CashTransactionsGrid.SelectedItem; var items = CtGridTradePickerListBox.Items.Cast <CheckListItem <Trade> >().ToList(); var selectedTrade = items.FirstOrDefault(x => x.IsChecked); if (selectedTrade == null) { await TradesRepository.RemoveCashTransaction(ct.Trade, ct).ConfigureAwait(true); } else { await TradesRepository.AddCashTransaction(selectedTrade.Item, ct).ConfigureAwait(true); } } await Context.SaveChangesAsync().ConfigureAwait(true); CashTransactionsGridTradePickerPopup.IsOpen = false; } }
public async Task RemoveCashTransactionsFromTrade(Trade trade, IEnumerable <CashTransaction> cashTransactions) { foreach (var ct in cashTransactions) { await TradesRepository.RemoveCashTransaction(trade, ct).ConfigureAwait(false); } }
private async void DeleteCashTransactions(IList cts) { if (cts == null || cts.Count == 0) { return; } var res = await DialogService.ShowMessageAsync( "Delete Order(s)", string.Format("Are you sure you want to delete {0} cash transaction(s)?", cts.Count), MessageDialogStyle.AffirmativeAndNegative); if (res == MessageDialogResult.Affirmative) { foreach (CashTransaction ct in cts) { if (ct.Trade != null) { TradesRepository.RemoveCashTransaction(ct.Trade, ct); } Context.CashTransactions.Remove(ct); } Context.SaveChanges(); } }