Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
Dim index As Integer = ListBox1.SelectedIndex
Me.BindingContext(dataset, "Employee").Position = index
ShowPicture(index)
End Sub
Private Sub ShowPicture(ByVal index As Integer)
Dim Sql As String = "SELECT Picture FROM Employee"
Dim cmd As New OleDbCommand(Sql, connect)
Dim adapter As New OleDbDataAdapter(cmd)
Dim data As New DataSet
adapter.Fill(dataset, "Employee")
Dim imgByte() As Byte = dataset.Tables("Employee").Rows(index)("Picture")
Dim imgstremam As New MemoryStream(imgByte)
PictureBox2.Image = Image.FromStream(imgstremam)
End Sub
Error ตรงที่ผม แก้ไม่ได้ซักที Listbox ผมใช้ for นับรายชื่อพนักงานงาน แล้วให้อยู่ Listbox ตอน Run ครั้งแรกถ้าไปคลิกพื้นที่ที่ไม่มีรายชื่อพนักงานอยู่ในพื้นที่ของ Listbox มันจะ Error ครับ เหมือนกับมัน ส่ง ค่า Index มายัง Private Sub ShowPicture เพราะใน dataset.Tables("Employee").Rows(index)("Picture") มันมีจำนวน rows ไม่ถึงตามที่เราไปคลิกใน Listbox ครับ มีวิธีแก้ไขไหมครับ
Dim sql As String = "Select Picture from Employee"
Dim cmd As New OleDbCommand(sql, connect)
Dim adapter As New OleDbDataAdapter(cmd)
Dim dataset As New DataSet
adapter.Fill(dataset, "Employee")