private void Execute(ConsoleMenuItem menuItem) { if (!menuItem.CanExecute()) { RefreshMenuItem(menuItem, true, true); return; } var consoleWasCleared = ClearOnExecution; if (consoleWasCleared) { Console.Clear(); } try { menuItem.Execute(); if (consoleWasCleared) { RefreshMenu(); } } catch (Exception ex) { var handler = ExecutionError; if (handler == null) { throw; } var args = new ExceptionEventArgs(ex); handler(this, args); if (!args.Handled) { throw; } } }
private bool CanExecute(ConsoleMenuItem menuItem) { return(menuItem.CanExecute()); }