У меня есть метод, который заполняет ListBox
объектами (пользовательский класс)
internal void UpdateList() {
foreach (Item item in Container.Items)
List.Items.Add(item);
}
Container
также является пользовательским классом, который содержит List<Item>
, где хранятся все объекты этого контейнера.
Теперь пользователь может выбрать (используя ComboBox
) отображение определенного Container
, и я хочу выбрать все Item
s, которые хранит этот контейнер.
Я попробовал это
private void ContainerList_SelectedIndexChanged(Object sender, EventArgs e) {
Container container = (Container)ContainerList.SelectedItem;
foreach (Item item in container.Items)
List.SelectedIndecies.Add(List.Items.IndexOf(item));
}
Но это не сработало: ничего не выбрано. Я чувствую, что проблема в том, что, хотя объекты в Container.Items
и List.Items
имеют одинаковые поля, они не одинаковы для программы.
Надеюсь, вы понимаете мою проблему - как мне заставить это работать?
Редактировать
уточнить; Я хочу, чтобы контейнеры были редактируемыми. Таким образом, пользователь выбирает Контейнер из списка, и только элементы, которые находятся в этом контейнере, выбираются в ListBox.
Те, кого нет в контейнере, все еще должны быть в ListBox, просто не выбраны
Итак, пользователь может редактировать элементы контейнера!