Salvete! Хорошо, после некоторой изнурительной агонии, я понял это.
Во-первых, я жестко закодировал структуру столбца в форме, а не загружал ее динамически. Мне больше не понадобятся дополнительные данные столбца в файле CSV, так что это вариант для меня. Но это позволяет мне точно указать, какие столбцы являются столбцами изображений, а какие текстовыми столбцами, и позволяет мне делать все это в графическом дизайнере VS.
Когда я загрузил CSV, я создал два дополнительных столбца изображения и установил их соответствующие значения данных как невидимые.
Позже, когда я сохраняю файл csv, я пропускаю строки изображения и сохраняю то, что находится в строках данных.
Private Sub ImportCSV(ByVal whatgrid As DataGridView, ByVal whatfile As String)
Dim TextLine As String = ""
Dim SplitLine() As String
whatgrid.Rows.Clear()
Dim thisobject0 As Object
Dim thisobject1 As Object
If System.IO.File.Exists(whatfile) = True Then
Dim objReader As New System.IO.StreamReader(whatfile)
Do While objReader.Peek() <> -1
TextLine = objReader.ReadLine()
SplitLine = Split(TextLine, ",")
If SplitLine(0) = "false" Then thisobject0 = My.Resources.markfalse Else If SplitLine(0) = "true" Then thisobject0 = My.Resources.marktrue Else thisobject0 = My.Resources.blank
If SplitLine(1) = "false" Then thisobject1 = My.Resources.markfalse Else If SplitLine(1) = "true" Then thisobject1 = My.Resources.marktrue Else thisobject1 = My.Resources.blank
whatgrid.Rows.Add(thisobject0, SplitLine(0), thisobject1, SplitLine(1), SplitLine(2), SplitLine(3))
Loop
objReader.Close()
blankNewRow()
Else
MsgBox("File Does Not Exist")
End If
End Sub