1

我有自己的自定义 TextBox 类(调用它MyCustomTextBox)。它在某种程度上帮助我处理来自条形码阅读器的扫描。

为此,我需要一种方法来捕获绑定到 TextProperty 的值何时更改。

注意:我不是在寻找“TextChanged”事件或任何与按键相关的事件(除非该按键更新源)。

这是一个例子:

我需要一个事件 (in MyCustomTextBox),仅当基础值 (CustomerId) 发生更改时才会触发。

注意:每次按键发生时,实际的 TextProperty 都会发生变化。但是 Source 直到稍后才会更新(取决于您的 UpdateSourceTrigger 设置)。对于我想要做的事情,TextProperty 更改过于频繁。所以依附于它不会帮助我。

有什么方法可以附加到 TextProperty 下的值?

这可能吗?

4

1 回答 1

1

是的,你需要连接 2 个事件

        <TextBox Name="Fred" Text="{Binding Foo, NotifyOnTargetUpdated=True, NotifyOnSourceUpdated=True, UpdateSourceTrigger=LostFocus}" TargetUpdated="Fred_TargetUpdated" SourceUpdated="Fred_SourceUpdated">

当文本框以外的其他内容更改基础属性(以及首次绑定时)时,TargetUpdated 事件将被触发,例如。你的虚拟机中的一些方法说

当您的文本框更新其绑定时,Sourceupdated 事件将被触发,例如失去焦点

于 2012-07-26T23:14:32.100 回答