Я хочу отобразить данные и изображение из msaccess в datagridview в vb.net-да.
Моя база данных содержит 3 поля
i.e FieldName datatype Empid ShortText Empname ShortTExt img OLEObject
а код внутри vb.net есть
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim dvgTxtcolumn As New DataGridViewTextBoxColumn dvgTxtcolumn.HeaderText = "Roll No" Dim dvgTxtcolumn1 As New DataGridViewTextBoxColumn dvgTxtcolumn1.HeaderText = "Stu Name" Dim dvgImagecolumn As New DataGridViewImageColumn dvgImagecolumn.HeaderText = "Image" dvgImagecolumn.ImageLayout = DataGridViewImageCellLayout.Stretch DataGridView1.Columns.Add(dvgTxtcolumn) DataGridView1.Columns.Add(dvgTxtcolumn1) DataGridView1.Columns.Add(dvgImagecolumn) DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnMode.Fill DataGridView1.RowTemplate.Height = 120 DataGridView1.AllowUserToAddRows = False insert_pic() End Sub
Private Sub insert_pic() Try conn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\CMS_SOFTWARE\CMS\CCMS\project.mdb") conn.Open() query = "Select * FROM test" Dim adapter2 As New OleDbDataAdapter(query, conn) Dim DT2 As New DataTable adapter2.Fill(DT2) For I = 0 To DT2.Rows.Count - 1 Dim ms As New MemoryStream PictureBox1.Image = DT2.Rows(I)(2) PictureBox1.Image.Save(MS, PictureBox1.Image.RawFormat) Dim dtimage As Byte() dtimage = ms.ToArray() DataGridView1.Rows.Add(DT2.Rows(I)(0), DT2.Rows(I)(1), dtimage) Next Catch ex As Exception MsgBox(Err.Description, MsgBoxStyle.Critical) End Try End Sub
Что я уже пробовал:
------------------------------------------ But The program was giving the error is "Unable to cast object of type 'System.Byte[] to type 'System.Drawing.Image'
Может ли кто-нибудь помочь мне, как решить эту проблему и как дать код для отображения изображения в представлении datagrid из ms access.Я пытаюсь это сделать с тех пор, как от последних 3 до 4 дней, но не могу этого сделать.кто-нибудь, пожалуйста, помогите мне
Пожалуйста, помогите мне, как решить эту проблему