|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
Всем доброго дня. Подскажите, есть ListBox Код: plaintext 1. 2. 3. 4.
и есть VM Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
и в случае отмены во View после OnPropertyChanged("SelectItemStatus") выделен не текущий элемент, можно ли решить данную ситуацию? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2011, 10:51 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
Странный сценарий, попробуй IsSynchronizedWithCurrentItem = "true" ... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2011, 09:49 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
SeVaСтранный сценарий, попробуй IsSynchronizedWithCurrentItem = "true"Это не то. vitali.podobed Чё это? WPF3, WPF4, Silverlight? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2011, 12:42 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
vitali.podobed, я считаю, что нужно так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2011, 15:39 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
Работающий вариант для WPF Код: plaintext 1. 2. 3. 4.
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2011, 21:57 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
this.OnPropertyChanged("SelectedItem"); this.OnPropertyChanged("SelectedItemStatus"); ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2011, 22:00 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
Алексей К, WPF 3 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.06.2011, 09:22 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
vitali.podobedАлексей К, WPF 3Видимо в этом причина. В WPF 4 в биндингах добавлена возможность: после передачи значения обратно из контрола в источник, контрол перечитывает значение из источника. В WPF 3 такой возможности нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.06.2011, 11:23 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
Урузагзагдыvitali.podobedАлексей К, WPF 3Видимо в этом причина. В WPF 4 в биндингах добавлена возможность: после передачи значения обратно из контрола в источник, контрол перечитывает значение из источника. В WPF 3 такой возможности нет.Сори, не под тем клоном зашёл. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.06.2011, 11:25 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
Урузагзагдыvitali.podobedАлексей К, WPF 3Видимо в этом причина. В WPF 4 в биндингах добавлена возможность: после передачи значения обратно из контрола в источник, контрол перечитывает значение из источника. В WPF 3 такой возможности нет. Ничего там не добавлено, тк возможен бесконечный цикл при таком варианте. По этой же причине нет реакции на сообщение об измении свойства. Поэтому пришлось OnPropertyChanged , сделать отложенной операцией с помощью Dispatcher.CurrentDispatcher.BeginInvoke ... |
|||
:
Нравится:
Не нравится:
|
|||
20.06.2011, 12:27 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
SeVaНичего там не добавлено, тк возможен бесконечный цикл при таком варианте.Бесконечный цикл возможен при любом TwoWay Binding. Там есть "защита" от бесконечных циклов. Где-то видел, что мол в WPF 3 такого не было. Добавлено в WPF 4 на случай, если сеттер свойства изменяет значение, как и в случае топикстартера. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
SeVaПо этой же причине нет реакции на сообщение об измении свойства. Поэтому пришлось OnPropertyChanged , сделать отложенной операцией с помощью Dispatcher.CurrentDispatcher.BeginInvoke Реакции нет, потому что в сеттере свойства MessageBox.Show. С ShowDialog была бы та же история. BeginInvoke как раз и решает эту проблему. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.06.2011, 14:57 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
MessageBox ни при чем. Без него такая же картина. Наверное, такое поводение - глюк в wpf4 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.06.2011, 23:12 |
|
ListBox MVVM вернуть прежний selected item
|
|||
---|---|---|---|
#18+
SeVaНаверное, такое поводение - глюк в wpf4Конечно, если программа не работает - стопудово ошибка в компиляторе. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2011, 05:42 |
|
|
start [/forum/topic.php?fid=21&fpage=52&tid=1442272]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 130ms |
0 / 0 |