public ChangePasswordViewModel( IDataApiClient dataApiClient, IPasswordBoxSpawner passwordBoxSpawner, string username = null) { this.dataApiClient = dataApiClient; Username = username; OldPasswordBox = passwordBoxSpawner.SpawnNew(); NewPasswordBox = passwordBoxSpawner.SpawnNew(tabIndex: 2); NewPasswordRepeatBox = passwordBoxSpawner.SpawnNew(tabIndex: 3); ChangePasswordCommand = new AsyncRelayCommand <IClosable>(ChangeAndClose, CanSubmit); CancelCommand = new RelayCommand <IClosable>(closable => closable.Close(false)); }
public LoginViewModel( IDataApiClient dataApiClient, IPasswordBoxSpawner passwordBoxSpawner, IViewSpawner <ChangePasswordViewModel> changePasswordViewSpawner) { this.dataApiClient = dataApiClient; this.passwordBoxSpawner = passwordBoxSpawner; this.changePasswordViewSpawner = changePasswordViewSpawner; Username = dataApiClient.LoggedInUsername; PasswordBox = passwordBoxSpawner.SpawnNew(); ChangePasswordCommand = new RelayCommand <IClosable>(OpenChangePasswordWindow); LoginCommand = new RelayCommand <IClosable>(Login, CanLogin); CancelCommand = new RelayCommand <IClosable>(closable => closable?.Close(false), closable => !IsLoggingIn); }