/// <summary> /// Закрытие окна /// </summary> /// <param name="obj"></param> private static void CloseAccount(object obj) { Accounts accounts = (Accounts)obj; if (accounts.Cash == 0) { if (accounts.State) { bool closeresult = BankMessageBox.MessYesNo($"Вы точно хотите закрыть счет клиента \n{accounts.ClientName}?"); if (closeresult) { App.RepositoryAccount.CloseAccount(accounts); } } else { MessageBox.Show("Счет закрыт"); } } else { while (true) { bool transferresult = BankMessageBox.MessYesNo($"Для закрытия счета баланс не должен превышать - 0 - \nХотите перевести остаток на счете?"); if (transferresult) { TransferMoneyMethod(obj); if (accounts.Cash != 0) { continue; } else { App.RepositoryAccount.CloseAccount(accounts); break; } } else { break; } } } }
/// <summary> /// Разрешение закрытия главного окна /// </summary> /// <param name="e"></param> /// <returns></returns> internal static CancelEventArgs CloseWindow(object e) { CancelEventArgs window = (CancelEventArgs)e; window.Cancel = true; if (!CloseWindowMain) { MessageBox.Show("Дождитесь завершения операции"); } else { var result = BankMessageBox.MessYesNo("Вы уверены что хотите закрыть окно?"); if (result) { Application.Current.Shutdown(); window.Cancel = false; } } return(window); }