[WPF] Интересный баг про Binding и VM
От: BluntBlind  
Дата: 17.01.11 07:51
Оценка:
Интересный баг/особенность про update биндига и данных во ViewModel на stackoverflow:
How not to lose binding source updates?

Что думаете, какие решения есть?

PS Кратко о проблеме:
Многие контролы апдейтят биндинг (записывают данные во ViewModel) на FocusLost. Если у вас есть Button с IsDefault=true, т.е. он будет нажиматься по кнопке ENTER, то возможен Epic Fail:
1. Диалог с текстбоксом и этой самой кнопкой Ok
2. Юзер вводит/меняет текст в этом самом тест боксе.
3. Нажимает на ENTER находясь в этом самом текстбоксе.
Результат:
Фокус не перешел, а значит новый текст НЕ ушел во ViewModel. Но кнопка нажалась и вы выполните команду со старыми данными ViewModel не соответствующими тому, что ввел и видел пользователь.
wpf bug binding vm viewmodel button isdefault
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.