Обмен предметами из одного ListBox в другой - PullRequest
0 голосов
/ 03 февраля 2019

Я пытаюсь обменять предметы в двух ListBox элементах управления, но добавлено только слово "(Коллекция)".Почему?

enter image description here

1 Ответ

0 голосов
/ 03 февраля 2019

Вы добавляете в ListBox один элемент, представляющий собой набор элементов, ListBox.ObjectCollection.
Для этого объекта вызывается метод ToString(), возвращающий тип объекта (Collection).

Чтобы поменять элементы, вы можете использовать временное хранилище, в котором хранится коллекция элементов одного ListBox, очистить его коллекцию Items, добавить элементы второго ListBox, очистить второй ListBox и добавить элементы.первого, используя временное хранилище в качестве источника:

var itemsL1 = new ListBox.ObjectCollection(listBox1, listBox1.Items);
listBox1.Items.Clear();
listBox1.Items.AddRange(listBox2.Items);
listBox2.Items.Clear();
listBox2.Items.AddRange(itemsL1);

Это работает, если коллекции элементов ListBoxes не заполняются с использованием свойства DataSource.
В противном случае поменяйте местами источники данных.

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