WPF Как скопировать выбранные элементы из списка связанных элементов в другой - PullRequest
0 голосов
/ 31 октября 2018

Все примеры, которые я нахожу, относятся к списку WPF без привязки к элементам: мне нужно скопировать элементы из списка A (привязанного к коллекции A), в другой список B (привязанный к коллекции B того же типа).

Если я прав, мне нужно скопировать из коллекции A в коллекцию B, а затем обновить список.

Как получить индексы выбранных предметов?

Или есть другой способ сделать это? Я что-то упустил?

Ответы [ 2 ]

0 голосов
/ 01 ноября 2018

Превратить ColectionA и CollectionB в ObservableCollection<Item>. Таким образом, элементы управления ListBox, к которым они привязаны, будут автоматически обновляться при добавлении / удалении элементов.

Чтобы сделать фактическую копию из одной коллекции в другую, вам нужно что-то вроде этого.

CollectionB.Clear()
foreach(var item in CollectionA.Where(i => ...))
    CollectionB.Add(item);
0 голосов
/ 01 ноября 2018

вы можете добавить свойство IsSelected в коллекцию Items и изменить ListboxItemTemplate, чтобы привязать свойство ListboxItem IsSelected к свойству IsSelected. а затем скопировать из коллекции A в коллекцию B.

при таком подходе вам не нужно запоминать selected-indexes, все будет выполнено связыванием.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...