无法转换vb.net类型的对象

时间:2016-01-02 09:56:37

标签: vb.net imageview oledb

无效的投射例外未处理

  

错误发生在“me.picturebox3.image = dt.rows(0).item(”pic“)

无法将system.byte[]类型的对象转换为system.drawing.image类型。

Dim dt as new datatable
Da.fill(dt)
Me.picturebox3.image = dt.rows(0).item("pic")                  

我是从数据表到图片框调用图像的新手。请帮忙.. 感谢

1 个答案:

答案 0 :(得分:2)

您需要找到一种方法,从您当前拥有的System.Drawing.Image构建System.Byte()类型的对象。

以下是您的工作方式:

Dim bytes As Byte() = CType(dt.Rows(0).Item("pic"), Byte())
Dim ms As New MemoryStream(bytes)

Me.picturebox3.Image = Image.FromStream(ms)

只要您的Byte()格式可以开箱即用,即JPEG,BMP等,这将有效。