Bild aus der Datenbank abrufen
Ich arbeite an meinem Projekt, in dem eine Liste der Mitarbeiter angezeigt wird. hier werden die informationen und das bild des mitarbeiters angezeigt. Mein Projekt kann jetzt die Liste der Mitarbeiter in der Listbox anzeigen. Wenn ich auf einen Mitarbeiter doppelklicke, wird sein / ihr Profil in einer Textbox angezeigt. Mein Problem ist, dass ich nicht ihre Bilder machen kann, um im zu zeigenpicturebox
. Ich habe ihr Bild bereits zusammen mit ihrer ID, ihrem Namen und ihrem Profil in einer Tabelle in meiner Datenbank gespeichert.It only shows the picture of the first employee on the table
. Kann mir jemand helfen?
Folgendes habe ich bereits getan:
Ich habe das Listenfeld ausgefüllt:
Call Connect()
With Me
STRSQL = "Select employee_name from Employees"
Try
myCmd.Connection = myConn
myCmd.CommandText = STRSQL
reader = myCmd.ExecuteReader
If (reader.Read()) Then
reader.Close()
adptr.SelectCommand = myCmd
adptr.Fill(dt)
lstEmployee.DisplayMember = "employee_name"
lstEmployee.ValueMember = "employee_id"
If dt.Rows.Count > 0 Then
For i As Integer = 0 To dt.Rows.Count - 1
lstEmployee.Items.Add(dt.Rows(i)("employee_name"))
Next
End If
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
End With
So zeige ich die Informationen im Textfeld
Dim FileSize As UInt32
Dim mStream As New System.IO.MemoryStream()
Dim arrImage() As Byte = mStream.GetBuffer()
FileSize = mStream.Length
Dim cmd As New MySqlCommandBuilder
Call Connect()
With Me
STRSQL = "select employee_name, profile from Employees where employee_id = " & lstEmployee.SelectedIndex
Try
myCmd.Connection = myConn
myCmd.CommandText = STRSQL
reader = myCmd.ExecuteReader
If (reader.Read()) Then
txtName.Text = reader("employee_name")
txtProfile.Text = reader("profile")
End If
Catch ex As Exception
MsgBox(ex.Message)
Finally
myConn.Close()
End Try
adptr.SelectCommand = myCmd
dt = New DataTable
adptr = New MySqlDataAdapter("select picture from Employees", myConn)
cmd = New MySqlCommandBuilder
adptr.Fill(dt)
Dim lb() As Byte = dt.Rows(0).Item("picture")
Dim lstr As New System.IO.MemoryStream(lb)
pix.Image = Image.FromStream(lstr)
pix.SizeMode = PictureBoxSizeMode.StretchImage
lstr.Close()