Текстовое привязку текстового поля WPF MVVM против события changeText

У меня есть текстовое поле со свойством Text, привязанным к viewmodel. Я привязал событие TextChanged к viewmodel.

Но проблема в том, что событие вызывает каждый знак, добавленный в текстовое поле (это хорошо), и Text в viewmodel обновляется, когда текстовое поле потеряло фокус (это плохо для меня).

Как сделать это свойство текста освежающим после каждого знака?

Или как отправить отправителя в качестве параметра? Я думаю, что отправитель мог бы обновить данные.

Моя интерактивность xaml:

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

Я использую RelayCommand.

Ответы

Ответ 1

На самом деле есть простой ответ; используйте 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