Как снять выделение с lisboxitem в mvvmlight? - PullRequest
0 голосов
/ 02 февраля 2012

У меня был быстрый вопрос по работе со списками в WP7 с использованием MVVM Light.В основном, прежде чем я использовал MVVM, все, что мне нужно было сделать, это установить SelectedIndex в -1 внутри события OnNavigatedTo, когда на страницу переходили.Затем внутри события SelectionChanged я бы проверил, был ли SelectedIndex равен -1, и если это так, я бы проигнорировал его.Я сделал это потому, что пользователь захотел снова выбрать тот же элемент, когда вернулся на страницу.

Теперь с MVVM (MVVM Light) я связываю событие с командой, котораязаботится о первой части.Но теперь я застрял, потому что я не знаю, как установить SelectedIndex в -1 из ViewModel, что не позволяет пользователю снова выбрать тот же элемент.Есть идеи?

Ответы [ 2 ]

2 голосов
/ 02 февраля 2012

Еще лучшим решением является не использовать событие выбора для запуска навигации.Вместо этого используйте событие касания отдельного элемента.
Это также позволяет избежать проблем случайной навигации при прокрутке.

1 голос
/ 02 февраля 2012

Попробуйте создать свойство SelectedItem в вашей viewmodel, затем выполните двустороннюю связь между свойством SelectedItem viewmodel и свойством SelectedItem в ListBox.Затем вы можете обновить его до любого значения, которое вы хотите, когда ваш Command сработает, и результат будет распространен обратно на ваш ListBox.

...