public CodeEditorViewModel(ICodeEditorCommandsFactory commandsFactory) { if (commandsFactory == null) { throw new ArgumentNullException(nameof(commandsFactory)); } Save = commandsFactory.CreateSaveCommand(); Cancel = commandsFactory.CreateCancelCommand(); }