25-12-21, 09:50 AM
كيفية عرض الصورة عند أختيارها من Listview علما بأن هذا الكود جلب الصور من قاعدة البيانات والكود الذي تحت مفترض عند الضغط علي الصورة تعرض علي picturebox ولكن لا تعرض ماالمشكلة في الكود
كود :
con.Close()
Dim imglist As New ImageList
imglist.ColorDepth = ColorDepth.Depth32Bit
ListView1.LargeImageList = imglist
ListView1.LargeImageList.ImageSize = New System.Drawing.Size(200, 200)
If con.State = ConnectionState.Closed Then con.Open()
ds.Clear()
Dim strsql As String = "SELECT dbo.pictures.Nu_pic, dbo.FilePictures.Num_File, dbo.FilePictures.Num_pic, dbo.pictures.pic,dbo.Files.Num_file FROM dbo.FilePictures INNER JOIN dbo.Files ON dbo.FilePictures.Num_File = dbo.Files.No_Genfile INNER JOIN dbo.pictures ON dbo.FilePictures.Num_pic = dbo.pictures.Nu_pic"
Dim dt_images As New DataTable
cmd.Connection = con
cmd.CommandText = strsql
adp.SelectCommand = cmd
adp.Fill(ds)
ListView1.Items.Clear()
imglist.Images.Clear()
For Each dr As DataRow In ds.Tables(0).Rows
Dim imb_buffer = CType(dr("pic"), Byte())
Dim img_stream As New IO.MemoryStream(imb_buffer, True)
img_stream.Write(imb_buffer, 0, imb_buffer.Length)
imglist.Images.Add(dr("Nu_pic").ToString(), New Bitmap(img_stream))
img_stream.Close()
Dim lsvparent As New ListViewItem
lsvparent.Text = dr("pic").ToString
lsvparent.ImageKey = dr("Nu_pic").ToString
ListView1.Items.Add(lsvparent)
lsvparent.Text = imglist.Images.Count.ToString
Next
End If
*********************************************************
هذا كود لعرض الصورة # Private Sub ListView1_ItemActivate(sender As Object, e As EventArgs) Handles ListView1.ItemActivate
Dim imglist As New ImageList
Dim lsvparent As New ListViewItem
If IsNothing(ListView1.FocusedItem) Then
Else
PictureBox3.Image = imglist.Images(lsvparent.Text.ToString)
End If
End Sub