Создайте класс-оболочку вокруг Stuff
, который добавляет логическое свойство IsChecked
.Свяжите свойство CheckBox.IsChecked
с StuffWrapper.IsChecked
, а свойство TextBox.Text
- с StuffWrapper.Stuff
.Вместо того, чтобы хранить ItemsSource
как List<Stuff>
, теперь это List<StuffWrapper>
.
Затем, чтобы создать новый список только отмеченных элементов, используйте функцию Linq «Где» следующим образом:*
var checkedList = list1.Where(s => s.IsChecked);