您好我正在开发一个系统(vb.Net)。这是场景,我有文本框,图片框和列表视图,当我点击列表视图中的一行时,它将填充文本框和图片框(例如用户详细信息和她/他的ID图片),但是当我点击下一个行,只有文本框会改变它的值,但图片框上的图像不会改变..这是我的部分工作代码:
Try
If lvUsrProf.SelectedItems.Count > 0 Then
''Call userImage()
Dim adptr As New MySqlDataAdapter
Dim tbl As DataTable
Dim commbuild As MySqlCommandBuilder
'Dim uID As Integer
adptr.SelectCommand = cmd
tbl = New DataTable
adptr = New MySqlDataAdapter("SELECT pic_image FROM userprofile", uCon)
commbuild = New MySqlCommandBuilder(adptr)
adptr.Fill(tbl)
Dim lb() As Byte = tbl.Rows(0).Item("pic_image")
Dim lstr As New System.IO.MemoryStream(lb)
pboxID.Image = Image.FromStream(lstr)
lstr.Close()
txtIdNo.Text = lvUsrProf.SelectedItems(0).SubItems(0).Text
txtName.Text = lvUsrProf.SelectedItems(0).SubItems(1).Text
txtLstNam.Text = lvUsrProf.SelectedItems(0).SubItems(2).Text
cboDept.Text = lvUsrProf.SelectedItems(0).SubItems(3).Text
txtPOs.Text = lvUsrProf.SelectedItems(0).SubItems(4).Text
txtCont.Text = lvUsrProf.SelectedItems(0).SubItems(5).Text
txtEmail.Text = lvUsrProf.SelectedItems(0).SubItems(6).Text
'pboxID.SizeMode = PictureBoxSizeMode.CenterImage
End If
Catch ex As Exception
MsgBox(ex.Message)
Finally
uCon.Close()
End Try
非常感谢您的精彩创意和建议!Maraming Salamat !!
答案 0 :(得分:0)
看起来您正在从表userprofile中获取所有图像。然后,对于您进行的每个选择,您将选择该结果中的第一个项目。由于您未在select中使用where子句,因此此图像将始终相同。尝试添加以下内容:
WHERE ID = lvUsrProf.SelectedItems(0).SubItems(0).Text
这应该只获取一个图像,它应该是连接到所选帐户的图像。