Есть ли способ, чтобы выбранные предметы в ListBox
как ListBoxItem
в случае SelectionChanged
(на ListBox
) в WPF?WPF ListBox.SelectedItems как ListBoxItem
Прямо сейчас, когда я звоню listBox.SelectedItems
Я получаю список элементов в формате моего источника данных.
Например, когда я создаю мой ListBox
я привязать его к CustomListBoxViewModel
в качестве источника данных, поэтому, когда я назвал SelectedItems
я получить список CustomListBoxViewModel
объектов.
Спасибо!
EDIT:
код, который был дан в выбранном ответе работал отлично для моего случая использования.
С другой стороны, я полностью понимаю, что это нарушение шаблона MVVM. Я буду использовать код, который вы указали в коде, за которым стоит представление xaml.
Причина моего первоначального вопроса состояла в том, что мне нужно реализовать ListBox
, у которого есть некоторые отключенные ListBoxItems
внутри. Эти предметы должны быть не поддающимися выбору.
Я попытался использовать прилагаемую собственность IsSelectable на моем ListBoxItems
, и это не сработало. Это свойство было очень вдохновлено этим post. Проблема заключалась в том, что когда я сразу выбирал отключенный элемент, вложенное свойство работало отлично. Элемент не может быть выбран, и он не находится внутри коллекции SelectedItems. Но если бы я хотел выбрать все предметы, нажав CTRL + A, все ListBoxItems
были выбраны даже отключенными и были найдены в коллекции SelectedItems.
Нет, это не так, как это работает. – Will
@ Могу ли я обновить вопрос по той причине, что я хочу это сделать. Это «лучший» способ сделать это, я думал ... Может быть, есть лучший способ сделать это? – EverydayLearner