У меня есть проект vb.net, где у меня есть DataGridView (называемый "dgvRevisiones") для записи информации о записях о повреждениях транспортных средств. Через SFTP, который я предварительно настроил, у меня есть фотографии каждой записи о повреждениях, моя программа загружает их во временную папку, и это прекрасно работает. Проблема в том, когда мне нужно вставить каждое изображение каждой записи в соответствующую ячейку. В настоящее время у меня есть код, который вставляет только последнее изображение, которое он собирает, и повторяет его по всему столбцу.
Здесь я оставляю свой код:
Public Sub ExtraerImagenRegistrosDaño()
Dim img As Image
Dim imagecol As New DataGridViewImageColumn
imagecol.ImageLayout = DataGridViewImageCellLayout.Zoom
FormPrincipal.dgvRevisiones.Columns.Insert(0, imagecol)
Dim rutaTmp = Application.StartupPath & "/tmp"
If (Not System.IO.Directory.Exists(rutaTmp)) Then
System.IO.Directory.CreateDirectory(rutaTmp)
End If
For rowIndex = 0 To FormPrincipal.dgvRevisiones.RowCount - 1
Dim idreg = FormPrincipal.dgvRevisiones.Rows(rowIndex).Cells("idreg").Value.ToString
Dim descripcion = FormPrincipal.dgvRevisiones.Rows(rowIndex).Cells("descripcion").Value.ToString
ConexionBD.conectar()
Dim recoleccionidins As New DataTable
comandoquery = "SELECT idins FROM registro_dano WHERE descripcion='" & descripcion & "' AND idreg='" & idreg & "'"
comando.Connection = ConexionBD.conexion
comando.CommandText = comandoquery
recoleccionidins.Load(comando.ExecuteReader)
Dim idinsExtraido = recoleccionidins.Rows(0).Item(0).ToString().Trim()
ConexionBD.cerrar()
Dim sessionOptions As New SessionOptions
With sessionOptions
.Protocol = Protocol.Sftp
.HostName = "HOST"
.UserName = "USER"
.Password = "PASSWORD"
.GiveUpSecurityAndAcceptAnySshHostKey = True
End With
Using session As New Session
session.Open(sessionOptions)
Try
session.GetFiles("/home/sislota/database-registros-dano/Registro-" & idinsExtraido & "-" & idreg & ".png", rutaTmp & "\Registro-" & idinsExtraido & "-" & idreg & ".png").Check()
Catch ex As Exception
End Try
End Using
И тут начинаем выпускать:
Try
img = Image.FromFile(rutaTmp & "\Registro-" & idinsExtraido & "-" & idreg & ".png")
Catch ex As Exception
End Try
imagecol.Image = img
Next
End Sub