Сбой System.Windows.Forms.ComboBox.Items.AddRange () для списка <DictionaryEntry> - PullRequest
0 голосов
/ 27 июня 2018

получаю из внешнего пакета List<DictionaryEntry> list.

Я хочу передать его ComboBox.Items.AddRange(), что требует object[]

Я пытался:

comboBox.Items.AddRange(list.ToArray());
comboBox.Items.AddRange((object[])(list.ToArray()));

но компилятор C # VS2013 не работает.

Следующий код, основанный на ComboBox.Items.Add(), прекрасно работает без явного преобразования DictionaryEntry в объект.

foreach (DictionaryEntry item in list)
    comboBox.Items.Add(item);

По другим причинам я не хочу использовать свойство combobox.DataSource, где я могу присвоить List<DictionaryEntry> list.

Есть ли простой способ без потери производительности преобразовать список List<DictionaryEntry> в object[]?

1 Ответ

0 голосов
/ 27 июня 2018

Попытка использования метода Cast<>():

comboBox.Items.AddRange(list.Cast<object>().ToArray());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...