Я столкнулся с этой проблемой, потому что хотел бы, чтобы мой код работал, даже если я добавил новые столбцы в исходный код. Мой код добавляет строку на основе количества строк источника. В моем коде отсутствует возможность учитывать количество столбцов. Вот мой код:
For Each srow As datagridviewrow In mytempDG.Rows
dataGridView1.Rows.Add(srow.Cells(0).Value.tostring, srow.Cells(1).Value.tostring, _
& srow.Cells(2).Value.tostring, srow.Cells(3).Value.tostring,srow.Cells(4).Value.tostring, _
& srow.Cells(5).Value.tostring, srow.Cells(6).Value.tostring)
Next
Приведенный выше код работает нормально, учитывая, что у меня есть 7 столбцов из tempDG (кстати, это мой источник данных). Но что, если я добавил еще два столбца (что делает их 9). Затем мне пришлось бы отредактировать код из источника (добавить «srow.cells(7).value.tostring, srow.cells(8).value... и т.д.»)
Я знаю, как перебрать столбец, но не знаю, как преобразовать его в данные, которые можно прочитать с помощью функции rows.add. Это то, что я пробовал до сих пор:
Dim finrow As List(Of String)
finrow = New List(Of String)
For Each srow As datagridviewrow In mytempDG.Rows
finrow.clear
For Each scol As DataGridViewColumn In mytempDG.Columns
finrow.add(srow.Cells(scol.Index).Value.ToString)
Next
dataGridView1.Rows.Add(finrow)
Next
Как я могу сначала создать набор данных, прежде чем добавлять его с помощью функции rows.add()? Также могу я узнать, какие данные нужны для rows.add()? Я предполагаю, что это список значений (в моем случае я использовал List(of String)).
Спасибо, ребята, заранее и хорошего дня!