WPF MVVM文本框文本绑定vs changedText事件

时间:2013-11-20 07:19:13

标签: wpf events mvvm binding command

我有文本框,文本属性绑定到viewmodel。 我已将TextChanged事件绑定到viewmodel。

但问题是,事件触发每个符号都会添加到文本框中(这很好),当文本框失去焦点时,视图模型中的文本会刷新(这对我不好)。

如何在每个符号后刷新此Text属性?

或者如何将发件人作为参数发送?我认为发件人可以刷新数据。

我的互动xaml:

<interactivity:Interaction.Triggers>
    <interactivity:EventTrigger EventName="TextChanged">
        <helpers:CustomCommandInvoker Command="{Binding UnlockChangedCommand}"   />
     </interactivity:EventTrigger>
 </interactivity:Interaction.Triggers>

我正在使用RelayCommand。

1 个答案:

答案 0 :(得分:50)

这有一个非常简单的答案;使用UpdatePropertyTrigger = PropertyChanged。每次更改字符时,这将更新VM属性。不需要触发器或命令: - )

<TextBox Text="{Binding ViewModelProperty, UpdateSourceTrigger=PropertyChanged}"></TextBox>

请点击此处了解详情:http://msdn.microsoft.com/en-us/library/system.windows.data.updatesourcetrigger(v=vs.110).aspx