Как привязать к PasswordBox в MVVM



я столкнулся с проблемой привязки к PasswordBox. Кажется, это риск для безопасности, но я использую шаблон MVVM, поэтому я хочу обойти это. Я нашла здесь интересный код (кто-нибудь использовал это или что-то подобное?)



http://www.wpftutorial.net/PasswordBox.html



технически это выглядит здорово, но я не уверен, как получить пароль.



у меня в основном есть свойства в моем LoginViewModel на Username и Password. Username отлично и работает, как это TextBox.



я использовал код выше, как указано, и ввел это



<PasswordBox ff:PasswordHelper.Attach="True"
ff:PasswordHelper.Password="{Binding Path=Password}" Width="130"/>


когда у меня был PasswordBox как TextBox и Binding Path=Password тогда свойство в моем .



мой код очень прост, в основном у меня есть Command для меня Button. Когда я нажимаю его CanLogin вызывается, и если он возвращает true, он вызывает Login.

Вы можете видеть, что я проверяю свою собственность на Username здесь работает отличный.



на Login Я посылаю вместе с моей службой а Username и Password,Username содержит данные из моих View но Password и Null|Empty



private DelegateCommand loginCommand;

public string Username { get; set; }
public string Password { get; set; }


public ICommand LoginCommand
{
get
{
if (loginCommand == null)
{
loginCommand = new DelegateCommand(
Login, CanLogin );
}
return loginCommand;
}
}

private bool CanLogin()
{
return !string.IsNullOrEmpty(Username);
}

private void Login()
{
bool result = securityService.IsValidLogin(Username, Password);

if (result) { }
else { }
}




вот что я делаю



<TextBox Text="{Binding Path=Username, UpdateSourceTrigger=PropertyChanged}"
MinWidth="180" />

<PasswordBox ff:PasswordHelper.Attach="True"
ff:PasswordHelper.Password="{Binding Path=Password}" Width="130"/>


у меня TextBox, это не проблема, но в моем ViewModel the Password пусто.



я делаю что-то неправильно или пропустил шаг?



я поставил точку останова и код введите статический вспомогательный класс, но это никогда не обновляет мой Password в своем ViewModel.

868   0  

Comments

    Ничего не найдено.