我知道你无法在WPF中绑定到PasswordBox.Password
。如何处理包含一个的表单?表单上的所有其他控件都绑定到业务对象上的属性,但只要输入发生更改,我就必须手动设置和检索密码属性。
我知道其他人已经创建了允许绑定到此属性的自定义控件,但另一方面,Microsoft出于某种原因明确禁止绑定到此属性。
这个问题是否有任何优雅的解决方案,或者我是否因为编写代码来弥合我的表单和业务对象之间的差距?
答案 0 :(得分:1)
只需绑定到PasswordBox本身,即{Binding ElementName=MyPasswordBox}
。
答案 1 :(得分:1)
它也是this的重复,在那里你可以找到另外两种方法:一个(在问题中)在ViewModel上有一个PasswordBox公共属性(我不喜欢这个方法),另一个(在接受回答)使用和事件处理程序以及ViewModel上的SecureString属性。它有点“传统”,但我更喜欢这种方法,而不是编写许多行代码来将密码绑定到附加属性。 希望这会有所帮助。