private void dgChange_ContextMenuOpening(object sender, ContextMenuEventArgs e) { try { if (dgChange.SelectedItem != null) { fnChangeResult change = (fnChangeResult)dgChange.SelectedItem; MenuItemCopy.IsEnabled = true; MenuItemDelete.IsEnabled = change.Balance == 0 && (CoinChangeStatus)change.ChangeStatusCode == CoinChangeStatus.Unused; MenuItemNote.IsEnabled = true; MenuItemProperties.IsEnabled = true; } else { MenuItemCopy.IsEnabled = false; MenuItemDelete.IsEnabled = false; MenuItemNote.IsEnabled = false; MenuItemProperties.IsEnabled = false; } } catch (Exception err) { MessageBox.Show($"{err.Message}", $"{err.Source}.{err.TargetSite.Name}", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void MenuItemProperties_Click(object sender, RoutedEventArgs e) { fnChangeResult change = (fnChangeResult)dgChange.SelectedItem; ChangePropertiesWindow propertiesWindow = new ChangePropertiesWindow(change, tcBitcoin); if (propertiesWindow.ShowDialog() == true) { Refresh(); OnBalance?.Invoke(this, new EventArgs()); } }
private void MenuItemCopy_Click(object sender, RoutedEventArgs e) { try { Clipboard.Clear(); fnChangeResult change = (fnChangeResult)dgChange.SelectedItem; Clipboard.SetText(change.PaymentAddress); } catch (Exception err) { MessageBox.Show($"{err.Message}", $"{err.Source}.{err.TargetSite.Name}", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void MenuItemDelete_Click(object sender, RoutedEventArgs e) { try { fnChangeResult change = (fnChangeResult)dgChange.SelectedItem; if (tcBitcoin.DeleteReceiptKey(change.PaymentAddress)) { Refresh(); OnBalance?.Invoke(this, new EventArgs()); } } catch (Exception err) { MessageBox.Show($"{err.Message}", $"{err.Source}.{err.TargetSite.Name}", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void MenuItemSync_Click(object sender, RoutedEventArgs e) { try { Cursor = Cursors.Wait; fnChangeResult change = (fnChangeResult)dgChange.SelectedItem; tcBitcoin.GetStatement(change.FullHDPath); Refresh(); OnBalance?.Invoke(this, new EventArgs()); } catch (Exception err) { MessageBox.Show($"{err.Message}", $"{err.Source}.{err.TargetSite.Name}", MessageBoxButton.OK, MessageBoxImage.Error); } finally { Cursor = Cursors.Arrow; } }
private void MenuItemNote_Click(object sender, RoutedEventArgs e) { try { fnChangeResult change = (fnChangeResult)dgChange.SelectedItem; ReceiptKeyWindow receiptKeyWindow = new ReceiptKeyWindow(change.PaymentAddress, change.InvoiceNumber == null ? string.Empty : change.InvoiceNumber); receiptKeyWindow.KeyNamespace = change.KeyNamespace; receiptKeyWindow.Note = change?.Note; if (receiptKeyWindow.ShowDialog() == true) { if (tcBitcoin.ChangeKeyNote(change.PaymentAddress, receiptKeyWindow.Note)) { Refresh(); } } } catch (Exception err) { MessageBox.Show($"{err.Message}", $"{err.Source}.{err.TargetSite.Name}", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void MenuItemProperties_Click(object sender, RoutedEventArgs e) { try { Clipboard.Clear(); fnTxResult txId = (fnTxResult)dgTx.SelectedItem; fnChangeResult change = tcBitcoin.NodeCash.fnChange(txId.CashAccountCode, txId.KeyName, txId.ChangeTypeCode) .Where(tb => tb.PaymentAddress == txId.PaymentAddress) .Select(tb => tb) .First(); var changeProperties = new ChangePropertiesWindow(change, tcBitcoin); if (changeProperties.ShowDialog() == true) { Refresh(); } } catch (Exception err) { MessageBox.Show($"{err.Message}", $"{err.Source}.{err.TargetSite.Name}", MessageBoxButton.OK, MessageBoxImage.Error); } }
public ChangePropertiesWindow(fnChangeResult changeResult, TCBitcoin bitcoin) { InitializeComponent(); tcBitcoin = bitcoin; change = changeResult; }