可以将UpdateSourceTrigger绑定到DependencyProperty吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了可以将UpdateSourceTrigger绑定到DependencyProperty吗?相关的知识,希望对你有一定的参考价值。

我想把PasswordBox的Binding的UpdateSourceTrigger动态地设置为LostFocus或PropertyChanged。

有没有办法将Binding的UpdateSourceTrigger绑定到DependencyProperty上?

Password="{Binding Path=PasswordProperty, Mode=TwoWay, UpdateSourceTrigger={Binding UpdateSourceTriggerProperty}"

祝贺你,安迪

答案

你不能改变 UpdateSourceTrigger 因为正如 Clemens 所指出的,它不是一个依赖性属性。通常情况下,你可以通过使用 StyleDataTrigger替换了整个绑定,但在这种情况下,你也不能这样做,因为 Password 也不是一个依赖性属性.

后面这一点是微软有意的设计选择。

当你得到 Password 属性值,您就会将密码作为纯文本暴露在内存中。为了避免这个潜在的安全风险,请使用 SecurePassword 属性来获取密码,以 SecureString.

更多的解释,你可以看一下这篇 好答案 从题 如何在MVVM中绑定到一个密码箱?.

以上是关于可以将UpdateSourceTrigger绑定到DependencyProperty吗?的主要内容,如果未能解决你的问题,请参考以下文章

WPF UpdateSourceTrigger属性

自定义 UpdateSourceTrigger 延迟?

背水一战 Windows 10 (20) - 绑定: DataContextChanged, UpdateSourceTrigger, 对绑定的数据做自定义转换

WPF + DatePicker + UpdateSourceTrigger = 显式

在 ItemsControl 中 UpdateSourceTrigger 设置为 PropertyChanged 的​​ ListBox 在键入时失去焦点

WPF Binding Mode,UpdateSourceTrigger