M-V-VMとWPFを使い始めたばかりで、いくつかのバインディングの問題を理解する上で問題があります。PasswordBox Binding
ComboBox
とPasswordBox
のログインページがあります。 ComboBox
は次のようになります。
<ComboBox Name="comboBox1" SelectedItem="{Binding Path=Username}">
これは正常に動作します - 私の値は毎回ComboBox
にSelectedItem
の変更を更新しましょう!
public bool CanLogin()
{
return !string.IsNullOrEmpty(Username) && !string.IsNullOrEmpty(Password);
}
だから私の問題は、私はViewModelににパスワードプロパティにバインドPasswordBox
を持っていないです。私のViewModelで
私は、ログインボタンがアクティブになっている場合は、このメソッドを使用していますICommand
を決定する必要があります - 私はそれがいつ更新されるかを伝える方法がありません。
PasswordBox
の値を自分のViewModelにどうやって取得できますか?私が読んだことのすべては、セキュリティ上の理由からPasswordBox
を束縛しないと言います。 CanLogin()のパスワード制限を解除するだけで、AccountServiceに渡すための値が必要です。
パスワードを文字列(SecureStringではなく)としてバインドすると、プロセスのメモリにパスワードが公開されます。 どちらのソリューションもセキュリティを妥協する – Rubinsh