// обработчик закрытия счета private static void CloseAccountHandler(object sender, AccountEventArgs e) { Console.WriteLine(e.Message); }
protected virtual void OnCalculated(AccountEventArgs e) { CallEvent(e, Calculated); }
// обработчик вывода средств private static void WithdrawSumHandler(object sender, AccountEventArgs e) { Console.WriteLine(e.Message); if (e.Sum > 0) Console.WriteLine("Идем тратить деньги"); }
protected virtual void OnClosed(AccountEventArgs e) { CallEvent(e, Closed); }
protected virtual void OnAdded(AccountEventArgs e) { CallEvent(e, Added); }
protected virtual void OnWithdrawed(AccountEventArgs e) { CallEvent(e, Withdrawed); }
// вызов отдельных событий. Для каждого события определяется свой витуальный метод protected virtual void OnOpened(AccountEventArgs e) { CallEvent(e, Opened); }
protected virtual void OnPrinted(AccountEventArgs e) { CallEvent(e, Printed); }