Member 11856456 Ответов: 1

Нужна помощь с выбором изображения в ячейке gridview


Поэтому я, наконец, через некоторое время исправил свой ввод изображений в sql, и теперь, когда я иду, чтобы получить их, я получаю эту ошибку:

System.InvalidCastException: 'Unable to cast object of type 'System.Windows.Forms.DataGridViewTextBoxCell' to type 'System.Windows.Forms.DataGridViewImageCell'.'


Я пытался изменить несколько вещей вокруг, но я продолжаю получать ту же ошибку.
Вот мой код:

Private Sub Gridview_selectedIndexchenge(ByVal sender As Object, ByVal e As EventArgs) Handles DataGridView1.MouseClick

       Me.Panel1.Controls.Clear()
       wid = 0

       For Each DGRS As DataGridViewRow In DataGridView1.SelectedRows

           Dim I As Integer = 0
           I = DataGridView1.SelectedRows(0).Index

           If DGRS.Selected = True Then

               Dim ms As New MemoryStream(CType(DataGridView1.Rows(I).Cells(1).Value, Byte()))
               PictureBox1.Image = Image.FromStream(ms)
               PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage

               DGRS.Dispose()

           End If
       Next

       For Each Imgdgvi As DataGridViewImageCell In DataGridView1.SelectedCells

           Dim pic As New PictureBox()
           pic.Image = Imgdgvi.Value
           pic.SizeMode = PictureBoxSizeMode.StretchImage

           pic.SetBounds(wid, 20, 200, 100)
           ' pic.Location = New Point(10, pic.Height)
           AddHandler pic.Click, AddressOf convertPic
           Me.Panel1.Controls.Add(pic)
           wid += 205

       Next

   End Sub


Я не знаю, что с ним не так, этот же код работает и для других программ, которые я сделал.
Пожалуйста, любая помощь будет очень полезна, и я смогу продолжить свой проект.

Что я уже пробовал:

Именно ошибка была выбрана для этой части кода
For Each Imgdgvi As DataGridViewImageCell In DataGridView1.SelectedCells


но я попытался изменить его с selectedcells на selected rows, но все равно столкнулся с той же проблемой. на самом деле я не знаю, как изменить это, чтобы соответствовать остальному коду.

1 Ответов

Рейтинг:
2

anarayane

Вы можете изменить определение на

For Each Imgdgvi As Object In DataGridView1.SelectedCells