2009-05-21 2 views
0

Итак, вот мой вопрос: почему код в первом фрагменте не работает, когда второй работает нормально. Кроме того, я задал свойство view для деталей. Я прочитал все, как добавить lvi в список, и он терпит неудачу каждый раз ... кроме того, я делаю это вручную.C# Проблема с ListView Добавление элементов

Таким образом, это не работает ...

// Iterating through the rows... 
for (int x = 0; x < numRows; x++) { 
    row = new List<string>(); 
    // Iterating through the cols... 
    for (int y = 0; y < numCols; y++) { 
     row.Add(data[y][x]); 
    } 
    lv.Items.Add(new ListViewItem(row.ToArray())); 
} 

Но это будет работать:

lv.Items.Add(new ListViewItem("foo")); 
+0

Можете ли вы определить «сбой»? Также - возможно, у вас есть индексы массивов правильно ... –

+0

Как он не работает? Я просто попробовал это здесь, и все работает отлично. –

ответ

1

row.Add(data[y][x]) кажется подозрительным. Почему вы получаете доступ к данным в первом порядке столбцов, но итерации в порядке строк? Кроме того, убедитесь, что тип row (вы не сказали нам это) на самом деле List<string>.

0

ListViewItem ищет String [] попробуйте литья row.ToArray() для строка[].

+0

Предполагая, что строка набирается как «Список » (за каждый init), то row.ToArray() уже является строкой [] –

+0

Поскольку строка объявлена ​​как List ToArray уже идет как строка []; нет необходимости бросать. –

+0

@Fredrik - на самом деле, объявление строки не показано ... мы можем * предположить * это список ... –

Смежные вопросы